<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Jonathan Conway</title>
	<atom:link href="http://jonathanconway.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://jonathanconway.wordpress.com</link>
	<description>class Hacker extends Knowledge</description>
	<lastBuildDate>Mon, 24 May 2010 02:56:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='jonathanconway.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Jonathan Conway</title>
		<link>http://jonathanconway.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://jonathanconway.wordpress.com/osd.xml" title="Jonathan Conway" />
	<atom:link rel='hub' href='http://jonathanconway.wordpress.com/?pushpress=hub'/>
		<item>
		<title>AutoMapping view-models in ASP.NET MVC</title>
		<link>http://jonathanconway.wordpress.com/2010/05/24/automapping-view-models-in-asp-net-mvc/</link>
		<comments>http://jonathanconway.wordpress.com/2010/05/24/automapping-view-models-in-asp-net-mvc/#comments</comments>
		<pubDate>Mon, 24 May 2010 02:16:55 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[asp.net mvc]]></category>
		<category><![CDATA[automapper]]></category>
		<category><![CDATA[controllers]]></category>
		<category><![CDATA[m-v-vm]]></category>
		<category><![CDATA[separation of concerns]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=108</guid>
		<description><![CDATA[A lot of developers are seeing the wisdom in using AutoMapper to cut out the unpleasant &#8220;middle-man&#8221; of view-model design &#8211; converting Models into ViewModels. Of course, the mappings must first be created, and once-per-application thank you. And here arises the question: do we keep the Mappings where we should - in the vicinity of the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=108&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A lot of developers are seeing the wisdom in using <a href="http://automapper.codeplex.com/wikipage?title=Getting%20Started">AutoMapper</a> to cut out the unpleasant &#8220;middle-man&#8221; of view-model design &#8211; converting Models into ViewModels.</p>
<p>Of course, the mappings must first be created, and once-per-application thank you. And here arises the question: do we keep the Mappings where we <em>should</em> - in the vicinity of the code they concern, or where we <em>must</em> &#8211; the Application_Begin() method of our Global class?</p>
<p>Personally I&#8217;d prefer the former.</p>
<p>So then the challenge is, how do we make sure the CreateMapping() statements are called once per application, but are still stored nearby the code they concern?</p>
<p>Here&#8217;s my solution (I also posted it on <a href="http://stackoverflow.com/questions/2891889/where-should-createmap-statements-go/2894214#2894214">StackOverflow</a>):</p>
<p>I add some logic to the constructor of my BaseController, which runs the &#8216;CreateMappings&#8217; method, but only once per Controller Type:</p>
<pre><code>public abstract class BaseController : Controller
{
    public BaseController()
    {
        if (!controllersWithMappingsCreated.Contains(GetType()))
        {
            CreateMappings();
            controllersWithMappingsCreated.Enqueue(GetType());
        }
    }

    protected virtual void CreateMappings() { }
}
</code></pre>
<p>Then, in each concrete controller, I use CreateMappings to declare the mappings for all the Models/ViewModels relevant to that controller.</p>
<pre><code>public class AccountController : BaseController
{
    public AccountController() : base() { }

    protected override void CreateMappings()
    {
        Mapper.CreateMap&lt;Models.User, ViewModels.UserProfile&gt;();
        Mapper.CreateMap&lt;Models.User, ViewModels.ChangePassword&gt;();
    }
}</code></pre>
<p>Now I can simply override CreateMappings() in any controller class I wish, and declare only those mappings that concern the behavior of that controller.</p>
<p>Since I try to limit the number of concerns each controller deals with, I&#8217;m confident that none of the CreateMappings().</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/108/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/108/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/108/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=108&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2010/05/24/automapping-view-models-in-asp-net-mvc/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Attribute soup</title>
		<link>http://jonathanconway.wordpress.com/2010/04/23/attribute-soup/</link>
		<comments>http://jonathanconway.wordpress.com/2010/04/23/attribute-soup/#comments</comments>
		<pubDate>Fri, 23 Apr 2010 02:32:32 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Development (General)]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[asp.net mvc]]></category>
		<category><![CDATA[componentmodel]]></category>
		<category><![CDATA[model-view-viewmodel]]></category>
		<category><![CDATA[validation]]></category>
		<category><![CDATA[view-model-controller]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=96</guid>
		<description><![CDATA[I&#8217;ve been working on a personal project &#8211; of course using the latest incarnation of ASP.NET MVC. Now I&#8217;m a good developer, and I keep my domain models separate from my views, using a layer of ViewModels. So what happens if I&#8217;m representing a sub-set of a domain object in more than one ViewModel, and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=96&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div id="_mcePaste">I&#8217;ve been working on a personal project &#8211; of course using the latest incarnation of <a href="http://live.visitmix.com/MIX10/Sessions/FT04">ASP.NET MVC</a>.</div>
<p>Now I&#8217;m a good developer, and I keep my domain models separate from my views, using a layer of ViewModels.</p>
<p>So what happens if I&#8217;m representing a sub-set of a domain object in more than one ViewModel, and each sub-set has the same validation attributes?</p>
<p>For example, say I&#8217;m storing a User with the following domain object:</p>
<p><a href="http://jonathanconway.files.wordpress.com/2010/04/viewmodels.jpg"></a><a href="http://jonathanconway.files.wordpress.com/2010/04/domains.jpg"><img class="alignnone size-full wp-image-99" title="domains" src="http://jonathanconway.files.wordpress.com/2010/04/domains.jpg?w=326&#038;h=137" alt="" width="326" height="137" /></a></p>
<p>I might have two separate Views for managing that user, each with a ViewModel and Validation attributes:</p>
<p><a href="http://jonathanconway.files.wordpress.com/2010/04/viewmodels1.jpg"><img class="alignnone size-full wp-image-105" title="viewmodels" src="http://jonathanconway.files.wordpress.com/2010/04/viewmodels1.jpg?w=338&#038;h=522" alt="" width="338" height="522" /></a></p>
<p class="MsoNormal">Spot the problem?</p>
<p class="MsoNormal">Managing validation is going to be rather laborious once we have 5 or more ViewModels intermediating one Domain object.</p>
<p>Allow me to indulge in a Venn diagram:</p>
<p><a href="http://jonathanconway.files.wordpress.com/2010/04/viewmodel-venn.jpg"><img class="alignnone size-full wp-image-100" title="viewmodel-venn" src="http://jonathanconway.files.wordpress.com/2010/04/viewmodel-venn.jpg?w=377&#038;h=295" alt="" width="377" height="295" /></a></p>
<p>I found an <a href="http://stackoverflow.com/users/47636/sam">awesome answer</a> on StackOverflow from a user called Sam, which basically involves attaching a meta-data object to the ViewModels, using <a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.metadatatypeattribute.aspx">MetadataType</a> and thus allowing us to re-use Validators.</p>
<p>Here&#8217;s a diagram to represent this:</p>
<p><a href="http://jonathanconway.files.wordpress.com/2010/04/viewmodel-metadata.jpg"><img class="alignnone size-full wp-image-101" title="viewmodel-metadata" src="http://jonathanconway.files.wordpress.com/2010/04/viewmodel-metadata.jpg?w=500&#038;h=158" alt="" width="500" height="158" /></a></p>
<p>The snag? Your ViewModels have to <em>explicitly declare</em> every member for which the Metadata object provides meta-data.</p>
<p>Thus, in our example above, we&#8217;d have to have HomeAddress and PostalAddress in EditBasicInfo, which would invalidate the purpose of using ViewModels.</p>
<p>I&#8217;m considering of cutting my own version of MetadataTypeAttribute, which allows you to attach it to a class <em>without </em>declaring all of its members.</p>
<p>Any other ideas? Drop me a comment/tweet.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/96/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/96/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/96/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=96&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2010/04/23/attribute-soup/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>

		<media:content url="http://jonathanconway.files.wordpress.com/2010/04/domains.jpg" medium="image">
			<media:title type="html">domains</media:title>
		</media:content>

		<media:content url="http://jonathanconway.files.wordpress.com/2010/04/viewmodels1.jpg" medium="image">
			<media:title type="html">viewmodels</media:title>
		</media:content>

		<media:content url="http://jonathanconway.files.wordpress.com/2010/04/viewmodel-venn.jpg" medium="image">
			<media:title type="html">viewmodel-venn</media:title>
		</media:content>

		<media:content url="http://jonathanconway.files.wordpress.com/2010/04/viewmodel-metadata.jpg" medium="image">
			<media:title type="html">viewmodel-metadata</media:title>
		</media:content>
	</item>
		<item>
		<title>Batching it</title>
		<link>http://jonathanconway.wordpress.com/2009/12/15/batching-it/</link>
		<comments>http://jonathanconway.wordpress.com/2009/12/15/batching-it/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 04:44:28 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=90</guid>
		<description><![CDATA[It&#8217;s been about a decade since I touched batch programming. Of course, I loved it back in the day. &#60;geekMoment&#62;I used to borrow books like this from the library and read them 5 times.&#60;/geekMoment&#62; So just today a co-worker asked me for some help. He&#8217;d written a batch file that lists every file in a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=90&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been about a decade since I touched batch programming. Of course, I loved it back in the day.</p>
<p>&lt;geekMoment&gt;I used to borrow books like <a href="http://www.amazon.com/Windows-Batch-File-Programming-Book/dp/0079120482">this</a> from the library and read them 5 times.&lt;/geekMoment&gt;</p>
<p>So just today a co-worker asked me for some help.</p>
<p>He&#8217;d written a batch file that lists every file in a directory including sub-directories. All he wanted to do was put an HTML tag around each filename.</p>
<p>Of course, the pre-1980 &#8216;DIR&#8217; command couldn&#8217;t do much for him.</p>
<p>Now it seems that Microsoft have added a &#8216;for&#8217; statement to the batch language. I managed to dig up an <a href="http://commandwindows.com/batchfiles-iterating.htm">article</a> describing it in fairly human terms.</p>
<p>The result was this:</p>
<p><code>for /r C:\HC %%X in (*) do ( echo ^&lt;span^&gt;%%X^&lt;/span^&gt; )</code></p>
<p>How cryptic is this?</p>
<ul>
<li>The basic structure is &#8220;for {set} {variable} in {filter} do {command}</li>
<li>The /r switch means &#8216;recursive&#8217;. I guess it only works if {set} is a directory path?</li>
<li>The variable names are ugly &#8211; %%X &#8211; even worse than PHP&#8217;s dollar sign!</li>
<li>Oh yeah and the hats &#8211; ^ &#8211; are for <a href="http://stackoverflow.com/questions/251557/escape-angle-brackets-in-a-windows-command-prompt">escaping angle brackets</a>.</li>
</ul>
<p>I don&#8217;t know why I used to love this language.</p>
<p>But I suppose this beats 20 lines of C# code.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/90/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=90&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2009/12/15/batching-it/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Generating map marker images with Python</title>
		<link>http://jonathanconway.wordpress.com/2009/12/10/generating-map-marker-images-with-python/</link>
		<comments>http://jonathanconway.wordpress.com/2009/12/10/generating-map-marker-images-with-python/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 01:03:53 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Hotels Combined]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=81</guid>
		<description><![CDATA[I&#8217;ve been working a lot with Google Maps and trying to optimize things on the client-side. Now when it came to the marker icons, I initially snatched them from Google&#8217;s Chart API. I needed 50 marker icons (numbered 1 to 50), so it worked well to dynamically generate a URL. However, in the interests of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=81&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working a lot with Google Maps and trying to optimize things on the client-side.</p>
<p>Now when it came to the marker icons, I initially snatched them from Google&#8217;s <a href="http://chart.apis.google.com">Chart API</a>.</p>
<p>I needed 50 marker icons (numbered 1 to 50), so it worked well to dynamically generate a URL.</p>
<p>However, in the interests of greater performance (and not being evil) I decided to write a script to download every we&#8217;d need as a PNG file, which we could serve ourselves.</p>
<p>From personal experience, C# is often overkill for this kind of thing. So I decided to give Python a chance to prove itself.</p>
<p>(It&#8217;s my first time doing <em>anything</em> in Python, but I know the fundamentals of the language, and I found some <a href="http://docs.python.org/library/urllib.html">excellent</a> <a href="http://www.pythonware.com/library/pil/handbook/image.htm">articles </a>that steered me in the right direction.)</p>
<p>So here&#8217;s my first Python script, generateGoogleImages.py:</p>
<p><code> from urllib import urlopen</code></p>
<p><code> </code></p>
<p><code>for i in range(1, 51):</code></p>
<p style="padding-left:30px;"><code> page = urlopen("http://chart.apis.google.com/chart?chst=d_map_pin_letter&amp;chld=" + str(i) + "|FFD800|000000&amp;bogus=.png")<br />
image = page.read()<br />
file = open("mm_21_34_blue_" + str(i) + ".png", "wb")<br />
file.write(image)<br />
file.close()<br />
</code></p>
<p>This works excellently, and I only have to tweak the script a little to generate any color combination I desire. Python lived up to my expectations.</p>
<p>Future hopes for the script:</p>
<ul>
<li>Control fill/border colors through command-line arguments</li>
<li>Output 1 file instead of 50, so I can use CSS sprites instead of individual images.</li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/81/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/81/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/81/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=81&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2009/12/10/generating-map-marker-images-with-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Vietnam</title>
		<link>http://jonathanconway.wordpress.com/2009/11/07/intro/</link>
		<comments>http://jonathanconway.wordpress.com/2009/11/07/intro/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 01:43:37 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=78</guid>
		<description><![CDATA[Going to publish some writing about my trip soon (promise!) For now, here are some pics from Sapa. http://picasaweb.google.com/jonathan.conway/VietnamSapa<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=78&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Going to publish some writing about my trip soon (promise!)</p>
<p>For now, here are some pics from Sapa.</p>
<p><a href="http://picasaweb.google.com/jonathan.conway/VietnamSapa#">http://picasaweb.google.com/jonathan.conway/VietnamSapa</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/78/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/78/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/78/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=78&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2009/11/07/intro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Upgrading to ASP.NET MVC 2 Preview 2</title>
		<link>http://jonathanconway.wordpress.com/2009/10/02/upgrading-to-asp-net-mvc-2-preview-2/</link>
		<comments>http://jonathanconway.wordpress.com/2009/10/02/upgrading-to-asp-net-mvc-2-preview-2/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 05:02:52 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=73</guid>
		<description><![CDATA[Well it&#8217;s been a long, long time since I blogged anything, so here&#8217;s a quick post to break the ice. I&#8217;ve been using ASP.NET MVC for a client project over the past 7 or 8 months (yes, I was using it pre-beta). There have been good and bad times, but overall I&#8217;m optimistic about the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=73&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Well it&#8217;s been a long, long time since I blogged anything, so here&#8217;s a quick post to break the ice.</p>
<p>I&#8217;ve been using ASP.NET MVC for a client project over the past 7 or 8 months (yes, I was using it pre-beta).</p>
<p>There have been good and bad times, but overall I&#8217;m optimistic about the framework.</p>
<p>Version 2 (preview 2) was just released and now features support for &#8216;Areas&#8217; within a single project.</p>
<p>This is awesome and just what I was looking for, as I&#8217;m using the areas feature to separate the back-end &#8220;admin&#8221; portion of the website from the live portion.</p>
<p>(Previously I had put the Admin stuff in a separate project, which made things more complicated in all sorts of ways.)</p>
<p>After installing the update and 25 minutes of refactoring I had everything working and had moved Admin in-project.</p>
<p>If only framework upgrades were always this easy&#8230; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/73/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/73/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/73/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=73&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2009/10/02/upgrading-to-asp-net-mvc-2-preview-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Plugging Earphones</title>
		<link>http://jonathanconway.wordpress.com/2008/12/10/plugging-earphones/</link>
		<comments>http://jonathanconway.wordpress.com/2008/12/10/plugging-earphones/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 03:26:04 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[adapter]]></category>
		<category><![CDATA[australia]]></category>
		<category><![CDATA[dr-bt50]]></category>
		<category><![CDATA[earphones]]></category>
		<category><![CDATA[headphones]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[seinheiser]]></category>
		<category><![CDATA[sony]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=60</guid>
		<description><![CDATA[Phew! After months of on-and-off searching, I think I&#8217;ve found the ideal headphone set to suit my noise-a-holic lifestyle. It&#8217;s the Sony DR-BT50 bluetooth headset and I got it off eBay for a couple of hundred and a bit (they&#8217;re not available in Australia). I also got this sweet little adapter for my iPhone, because Apple decided [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=60&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Phew! After months of on-and-off searching, I <em>think</em> I&#8217;ve found the ideal headphone set to suit my noise-a-holic lifestyle. It&#8217;s the <a href="http://www.sonystyle.com/webapp/wcs/stores/servlet/ProductDisplay?catalogId=10551&amp;storeId=10151&amp;langId=-1&amp;productId=8198552921665095015">Sony DR-BT50</a> bluetooth headset and I got it off eBay for a couple of hundred and a bit (they&#8217;re not available in Australia).</p>
<p>I also got <a href="http://imgs.inkfrog.com/pix/wow2buy/P95D.jpg">this sweet little adapter</a> for my iPhone, because Apple decided that we&#8217;re not allowed to stream our music over bluetooth (A2DP), at least not out-of-the-box.</p>
<p>My workmate has been using Seinheiser in-ear-phones, which he says are OK but overpriced. Apparently there&#8217;s only one distributer of Seinheiser in Australia, so they can charge what they like. Makes me wonder how much of this goes on in Australia.</p>
<p>Anyway, you&#8217;ll hear more about the Sony&#8217;s when they finally arrive.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/60/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/60/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/60/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=60&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2008/12/10/plugging-earphones/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Where&#8217;s Google Transit for Sydney?</title>
		<link>http://jonathanconway.wordpress.com/2008/12/08/wheres-google-transit-for-sydney/</link>
		<comments>http://jonathanconway.wordpress.com/2008/12/08/wheres-google-transit-for-sydney/#comments</comments>
		<pubDate>Mon, 08 Dec 2008 00:48:48 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[131500]]></category>
		<category><![CDATA[Adelaide]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[maps]]></category>
		<category><![CDATA[Perth]]></category>
		<category><![CDATA[sydney]]></category>
		<category><![CDATA[transit]]></category>
		<category><![CDATA[WhereIs]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=55</guid>
		<description><![CDATA[Google Transit is a new feature that will integrate public transport data into Google Maps. This would be an excellent tool for Sydney-siders! How many times have we been frustrated with the lousy user experience offered by 131500.com and WhereIs.com.au, when trying to figure out how to get somewhere on public transport? My question is, since [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=55&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a class="external" rel="nofollow" href="http://www.google.com/transit" target="_blank">Google Transit</a> is a new feature that will integrate public transport data into Google Maps.</p>
<p>This would be an excellent tool for Sydney-siders!</p>
<p>How many times have we been frustrated with the lousy user experience offered by 131500.com and WhereIs.com.au, when trying to figure out how to get somewhere on public transport?</p>
<p>My question is, since Google Transit has already been implemented for <a class="external" rel="nofollow" href="http://www.google.com/maps?ie=UTF8&amp;dirflg=r&amp;ll=-34.851847,138.575706&amp;spn=0.160029,0.241699" target="_blank">Adelaide</a> and <a class="external" rel="nofollow" href="http://www.google.com/maps?ie=UTF8&amp;dirflg=r&amp;ll=-32.068317,115.985916&amp;spn=1.159584,0.804729" target="_blank">Perth</a>, why not Sydney?</p>
<p>NB. I&#8217;ve started a <a href="http://forums.whirlpool.net.au/forum-replies.cfm?t=1101134">discussion</a> on this.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/55/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/55/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/55/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=55&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2008/12/08/wheres-google-transit-for-sydney/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Kubrick, Software and Iterations</title>
		<link>http://jonathanconway.wordpress.com/2008/11/18/kubrick-software-and-iterations/</link>
		<comments>http://jonathanconway.wordpress.com/2008/11/18/kubrick-software-and-iterations/#comments</comments>
		<pubDate>Tue, 18 Nov 2008 22:29:01 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[BBC]]></category>
		<category><![CDATA[films]]></category>
		<category><![CDATA[iteration]]></category>
		<category><![CDATA[movie]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[stanley kubrick]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=52</guid>
		<description><![CDATA[How this post was written I didn&#8217;t sit down and write this post from beginning to end. I wrote the way most people write &#8211; they type something, then hit Backspace a few times then write something else, and repeat the process until they have something they&#8217;re relatively happy with. Kubrick&#8217;s Secret I recently watched [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=52&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>How this post was written</strong></p>
<p>I didn&#8217;t sit down and write this post from beginning to end. I wrote the way most people write &#8211; they type something, then hit Backspace a few times then write something else, and repeat the process until they have something they&#8217;re relatively happy with.</p>
<p><strong>Kubrick&#8217;s Secret</strong></p>
<p>I recently watched &#8220;<a href="http://www.google.com.au/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fvideo.google.com%2Fvideoplay%3Fdocid%3D-5739282975440441779&amp;ei=bzsjSfDQEIrKtQPn9tz8Dg&amp;usg=AFQjCNGWIISqtVmyZVb7tcbK6O1kzDMKFw&amp;sig2=mdQtxbmDAxSh29fA4ueSIg">Stanley Kubrick&#8217;s Boxes</a>&#8220;, an <em></em>hour-long documentary about what a drooling fan (not myself) found in the late film director&#8217;s basement.</p>
<p>Kubrick wasn&#8217;t such a genuis after all. But he <em>did</em> have a brilliant method of achieving his brilliant results. He just did everything hundreds of times.</p>
<p>What they found in the basement were collections of photos of the same kind of scene shot in multiple locations. Thousands of gate photos. Thousands of street scenes. Thousands of hooker doorways (eek!).</p>
<p>It doesn&#8217;t stop there. Remember the classical music in many of Kubrick&#8217;s films? Well I think this was just an easy way to sample hundreds of different pieces to find out which one was most suitable. Certainly saved having to pay professional composers (well most of the time).</p>
<p>And recall how Kubrick would shoot a scene hundreds of times, to the chagrin of many an actor.  He didn&#8217;t do this because the actors themselves were crap. He did it so he could sit down later in the editing room and hand-pick the best possible performance. Which also explains why he often took the editing upon himself.</p>
<p><strong>Software development</strong></p>
<p>There are a million people saying this in a million different ways (SCRUM being one of them), but basically, you don&#8217;t write a software program from beginning to end. It&#8217;s an iterative process. It&#8217;s more iterative than other comparably processes (such as building a house) because anything and everything can be changed instantly.</p>
<p>When you&#8217;re fiddling with bytes in computer memory, what better way to come up with the best solution than rewriting the program again and again until you get it right? This is called <em>iterative development</em>.</p>
<p><strong>The point?</strong></p>
<p>I guess what I have to say at the end of it all is, iteration is a very powerful tool for achieveing the best possible results. It can take time, but it&#8217;s going to save time if you want to build something that will last. That&#8217;s why, 30 years later, everyone still loves <em>The Shining</em>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=52&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2008/11/18/kubrick-software-and-iterations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
		<item>
		<title>Top 5 reasons the iPhone 3G sucks</title>
		<link>http://jonathanconway.wordpress.com/2008/08/23/top-5-reasons-the-iphone-3g-sucks/</link>
		<comments>http://jonathanconway.wordpress.com/2008/08/23/top-5-reasons-the-iphone-3g-sucks/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 05:27:31 +0000</pubDate>
		<dc:creator>jonathanconway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[iphone 3g apple]]></category>

		<guid isPermaLink="false">http://jonathanconway.wordpress.com/?p=49</guid>
		<description><![CDATA[I&#8217;m beginning to get what Maddox was on about&#8230; post-purchase of course. Crippled hardware &#8211; no video, no VOIP and crippled bluetooth. Poor battery life &#8211; 5 hours isn&#8217;t much better than most laptops. Closed-source, heavily proprietary software and hardware architecture. And you thought Microsoft were evil? Bad call and receiption quality. You&#8217;re locked into [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=49&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m beginning to get what <a href="http://www.thebestpageintheuniverse.net/c.cgi?u=iphone">Maddox</a> was on about&#8230; post-purchase of course. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </p>
<ol>
<li>Crippled hardware &#8211; no video, no VOIP and crippled bluetooth.</li>
<li>Poor battery life &#8211; 5 hours isn&#8217;t much better than most laptops.</li>
<li>Closed-source, heavily proprietary software and hardware architecture. And you thought Microsoft were evil?</li>
<li>Bad call and receiption quality.</li>
<li>You&#8217;re locked into a service provider from the work go. And getting it unlocked isn&#8217;t as easy as they said &#8211; after waiting four weeks, Apple still won&#8217;t sent me the unlock code.</li>
</ol>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/jonathanconway.wordpress.com/49/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/jonathanconway.wordpress.com/49/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jonathanconway.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jonathanconway.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jonathanconway.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jonathanconway.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jonathanconway.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jonathanconway.wordpress.com/49/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jonathanconway.wordpress.com/49/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jonathanconway.wordpress.com/49/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jonathanconway.wordpress.com&amp;blog=473317&amp;post=49&amp;subd=jonathanconway&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jonathanconway.wordpress.com/2008/08/23/top-5-reasons-the-iphone-3g-sucks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/30b5f67cfae1269e00a66300d98c025d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jonathanconway</media:title>
		</media:content>
	</item>
	</channel>
</rss>
