<?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>Goblincave &#187; English posts</title>
	<atom:link href="http://goblincave.net/category/english/feed" rel="self" type="application/rss+xml" />
	<link>http://goblincave.net</link>
	<description>WPF, C# i den lidt større sammenhæng</description>
	<lastBuildDate>Sun, 15 Aug 2010 19:18:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Trying to build high-concurrency systems&#8230; it&#8217;s just not easy!</title>
		<link>http://goblincave.net/08/2010/trying-to-build-high-concurrency-systems-its-just-not-easy.php</link>
		<comments>http://goblincave.net/08/2010/trying-to-build-high-concurrency-systems-its-just-not-easy.php#comments</comments>
		<pubDate>Sun, 15 Aug 2010 19:18:58 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[* Usability]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=572</guid>
		<description><![CDATA[When you have multiple clients working on the same data &#8211; concurrency rears it&#8217;s ugly head. How to handle two users loading the same data &#8211; and both of them editing it and trying to save it back to the DB. There is no way to keep everyone happy when this happens &#8211; either Last-In [...]]]></description>
		<wfw:commentRss>http://goblincave.net/08/2010/trying-to-build-high-concurrency-systems-its-just-not-easy.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello Eric &#8211; and QtPy (UI for Python)</title>
		<link>http://goblincave.net/07/2010/hello-eric-and-qtpy-ui-for-python.php</link>
		<comments>http://goblincave.net/07/2010/hello-eric-and-qtpy-ui-for-python.php#comments</comments>
		<pubDate>Tue, 20 Jul 2010 23:30:53 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=562</guid>
		<description><![CDATA[I went ahead and got the Eric IDE to start a bit of a project with some UI involved. I found a nice tutorial for a parser. Of course, it would be too easy to install it on Windows &#8211; so, I did it all on my netbook&#8230; first things first. Don&#8217;t do that for [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/hello-eric-and-qtpy-ui-for-python.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adventures into Python</title>
		<link>http://goblincave.net/07/2010/adventures-into-python.php</link>
		<comments>http://goblincave.net/07/2010/adventures-into-python.php#comments</comments>
		<pubDate>Mon, 19 Jul 2010 19:33:35 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=560</guid>
		<description><![CDATA[When in Rome&#8230; After installing Linux &#8211; it was kinda anti-climatic. Everything was installed without me doing anything &#8211; and using the browser and the small utilities quickly was&#8230; meh. So, new project &#8211; learn a programming language that would run on Linux. Enter a lot of confusion. I had no idea what-so-ever where to [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/adventures-into-python.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world &#8211; MonoDevelop</title>
		<link>http://goblincave.net/07/2010/hello-world-monodevelop.php</link>
		<comments>http://goblincave.net/07/2010/hello-world-monodevelop.php#comments</comments>
		<pubDate>Sun, 18 Jul 2010 21:44:33 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux Mint]]></category>
		<category><![CDATA[MonoDevelop]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=555</guid>
		<description><![CDATA[I had to try&#8230; Positive impression so far. Just made a simple console application. Everything is lightning fast &#8211; even if I&#8217;m sitting on a 0.99 GHz ATOM CPU, 1 GB Ram and a very small hard-drive &#8211; I was amazed that it would even start &#8211; but this speed? I wouldn&#8217;t have thought it [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/hello-world-monodevelop.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world Linux</title>
		<link>http://goblincave.net/07/2010/hello-world-linux.php</link>
		<comments>http://goblincave.net/07/2010/hello-world-linux.php#comments</comments>
		<pubDate>Sun, 18 Jul 2010 20:41:10 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[English posts]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Linux Mint]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=553</guid>
		<description><![CDATA[I&#8217;ve been threatening to do this for some time &#8211; but now, I finally took the plunge. I have a little net-book that&#8217;s a perfect candidate for experiments. I started this afternoon and now a few hours (took me 6 hours before I was fully online), I&#8217;m reporting to you live from my new Linux [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/hello-world-linux.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WPF DataGrid &#8211; Gotchas</title>
		<link>http://goblincave.net/07/2010/wpf-datagrid-gotcha.php</link>
		<comments>http://goblincave.net/07/2010/wpf-datagrid-gotcha.php#comments</comments>
		<pubDate>Sat, 17 Jul 2010 23:55:04 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Rants]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=546</guid>
		<description><![CDATA[The WPF DataGrid is a monster of a control (just like the DataGridView in Windows Forms is), but some things drive me crazy. They baked a lot of functionality into this control &#8211; and then they skipped easy functionality because&#8230; well, who knows. Below, I&#8217;ll present a few of the ones, I&#8217;ve dealt with: CellAlignment [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/wpf-datagrid-gotcha.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Approximately TestDriven</title>
		<link>http://goblincave.net/07/2010/approximately-testdriven.php</link>
		<comments>http://goblincave.net/07/2010/approximately-testdriven.php#comments</comments>
		<pubDate>Sat, 17 Jul 2010 09:49:58 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[* Rants]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[DDD]]></category>
		<category><![CDATA[Patterns]]></category>
		<category><![CDATA[TDD]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=544</guid>
		<description><![CDATA[As it might shine through in my previous posts &#8211; I have a pragmatic view on TDD. I understand why tests are important &#8211; I do tests, but I don&#8217;t test everything &#8211; maybe I approach 15% test-coverage. I chose to make ERP-systems my speciality &#8211; and I land at lousy 15% coverage? Many would [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/approximately-testdriven.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Prototyping vs. doing &#8216;real&#8217; developement</title>
		<link>http://goblincave.net/07/2010/prototyping-vs-doing-real-developement.php</link>
		<comments>http://goblincave.net/07/2010/prototyping-vs-doing-real-developement.php#comments</comments>
		<pubDate>Tue, 13 Jul 2010 22:32:24 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[* Rants]]></category>
		<category><![CDATA[English posts]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=538</guid>
		<description><![CDATA[I&#8217;m currently making a prototype where I have to show how the final application will look. That means, I have to build basically everything, I would normally build for the &#8216;real&#8217; application (data, styling and command-logic). This is not my preferred way of working &#8211; normally I would build it incrementally &#8211; one functionality at [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/prototyping-vs-doing-real-developement.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The gobbo got a new job!</title>
		<link>http://goblincave.net/07/2010/the-gobbo-got-a-new-job.php</link>
		<comments>http://goblincave.net/07/2010/the-gobbo-got-a-new-job.php#comments</comments>
		<pubDate>Fri, 09 Jul 2010 18:56:24 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[* Jobhunting]]></category>
		<category><![CDATA[English posts]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=536</guid>
		<description><![CDATA[Come 1st of August, I start a new job at NotaPlan ApS as a C#/WPF developer. I will be joining a few different projects in a tight team of 4 &#8211; and overall, I hope I can add some experience in business-logic &#8211; and of course my NHibernate and WPF skills will be put to [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/the-gobbo-got-a-new-job.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How people always try to do things the hard way with WPF</title>
		<link>http://goblincave.net/07/2010/how-people-always-try-to-do-things-the-hard-way-with-wpf.php</link>
		<comments>http://goblincave.net/07/2010/how-people-always-try-to-do-things-the-hard-way-with-wpf.php#comments</comments>
		<pubDate>Tue, 06 Jul 2010 20:00:44 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[* Rants]]></category>
		<category><![CDATA[English posts]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=533</guid>
		<description><![CDATA[I lurk a lot on StackOverflow - it sometimes strikes me how hard people try to make their problems. Instead of using a simple solution, they will over-engineer it until it becomes impossible to do what they&#8217;re trying to accomplish. If you are trying to bind to the parent control via templatebinding and do a [...]]]></description>
		<wfw:commentRss>http://goblincave.net/07/2010/how-people-always-try-to-do-things-the-hard-way-with-wpf.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NHibernate querying &#8211; a matter of knowing your scenarios</title>
		<link>http://goblincave.net/06/2010/nhibernate-querying-a-matter-of-knowing-your-scenarios.php</link>
		<comments>http://goblincave.net/06/2010/nhibernate-querying-a-matter-of-knowing-your-scenarios.php#comments</comments>
		<pubDate>Sat, 26 Jun 2010 08:48:57 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Rants]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=518</guid>
		<description><![CDATA[These past few days, I&#8217;ve held a company-specific course on NHibernate. It went really well, and I believe the participants also got those few golden eggs that makes the course worthwhile for them. They had been using NHibernate for some time and have specialists abroad &#8211; so, it was with some trepidation I approached the [...]]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/nhibernate-querying-a-matter-of-knowing-your-scenarios.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google vs books</title>
		<link>http://goblincave.net/06/2010/google-vs-books.php</link>
		<comments>http://goblincave.net/06/2010/google-vs-books.php#comments</comments>
		<pubDate>Sat, 19 Jun 2010 20:56:14 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Rants]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=514</guid>
		<description><![CDATA[I am reading up on usability at the moment and I passed a usability guru&#8217;s website &#8211; Jacob Jensen. He has strong opinions &#8211; and I like strong opinions and tend to agree with him mostly. Well, that&#8217;s up until now &#8211; I read an article by him entitled &#8220;Google makes you dumber&#8221; (link). That [...]]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/google-vs-books.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is this thing on..? *taps microphone*</title>
		<link>http://goblincave.net/06/2010/is-this-thing-on-taps-microphone.php</link>
		<comments>http://goblincave.net/06/2010/is-this-thing-on-taps-microphone.php#comments</comments>
		<pubDate>Sun, 13 Jun 2010 21:00:21 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Rants]]></category>

		<guid isPermaLink="false">http://goblincave.net/06/2010/is-this-thing-on-taps-microphone.php</guid>
		<description><![CDATA[Sometimes, I&#8217;m wondering whether anyone is actually reading my posts here at GoblinCave. I realize that many will stop by only once or twice when a google search has turned this way &#8211; but I have no idea if there is an audience for the posts I&#8217;m writing. So, a quick raise of hands (read: [...]]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/is-this-thing-on-taps-microphone.php/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 10 of N &#8211; OrderLines</title>
		<link>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-10-of-n-orderline.php</link>
		<comments>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-10-of-n-orderline.php#comments</comments>
		<pubDate>Sun, 06 Jun 2010 20:15:37 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=475</guid>
		<description><![CDATA[I've saved the goodies for the last post. We are now ready to edit an order after <a href="http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-9-of-n-orders-and-handling-null.php">post 9</a> - and we want to do it in style. We want to present the user with a really nice interface for fast input. We could have done it the old-fashioned way with an 'Add' button for adding an orderline in a new window, but hey, we got a shiny 'new' DataGrid in 4.0 - so let's put that for a spin:]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-10-of-n-orderline.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 9 of N &#8211; Orders and handling null</title>
		<link>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-9-of-n-orders-and-handling-null.php</link>
		<comments>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-9-of-n-orders-and-handling-null.php#comments</comments>
		<pubDate>Sun, 06 Jun 2010 19:45:56 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=470</guid>
		<description><![CDATA[We are now turning towards a somewhat more involved example after a little break in <a href="http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-8-of-n-rounding-up-customers.php">part 8</a> - the orders. We'll make a bit more complex filter for the list of orders while keeping it paged - the IOrdersViewModel is so akin to ICustomersViewModel that I'll jump to the differences in the IOrderFilter:]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-9-of-n-orders-and-handling-null.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 8 of N &#8211; Rounding up customers</title>
		<link>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-8-of-n-rounding-up-customers.php</link>
		<comments>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-8-of-n-rounding-up-customers.php#comments</comments>
		<pubDate>Fri, 04 Jun 2010 21:09:48 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=457</guid>
		<description><![CDATA[Okay, we have successfully created a small application in <a href="http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-7-of-n-views-2.php">part 7</a> where the user can add, edit and remove customers. Not bad considering the small amount of code in the solution. Still we have a lot of classes involved and this alone creates a lot of complexity. We are paying the price for a very stable and easy-to-maintain solution down the road. I hope this will be easy to see when we start implementing entity number two - the order.]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-8-of-n-rounding-up-customers.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 7 of N &#8211; Views</title>
		<link>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-7-of-n-views-2.php</link>
		<comments>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-7-of-n-views-2.php#comments</comments>
		<pubDate>Fri, 04 Jun 2010 20:45:31 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=464</guid>
		<description><![CDATA[Okay - <a href="http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-6-of-n-customer-interaction.php">part 6</a> was ViewModels - now it is time for the eye-candy and unleashing the power of the ViewModels. All views (save one) will implement the IView&#60;TViewModel&#62; interface which has a single method: void SetViewModel(TViewModel viewmodel). I'll explain later why there are no more methods...]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-7-of-n-views-2.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 6 of N &#8211; customer interaction</title>
		<link>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-6-of-n-customer-interaction.php</link>
		<comments>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-6-of-n-customer-interaction.php#comments</comments>
		<pubDate>Fri, 04 Jun 2010 20:41:06 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=439</guid>
		<description><![CDATA[Okay - so in <a href="http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-5-of-n-%E2%80%93-customersviewmodel.php">post 5</a> we have managed to get and find data - now we need to be able to perform interactions with the data. We need an implementation of interface ICustomerDetailViewModel:]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-6-of-n-customer-interaction.php/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 5 of N – CustomersViewModel</title>
		<link>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-5-of-n-%e2%80%93-customersviewmodel.php</link>
		<comments>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-5-of-n-%e2%80%93-customersviewmodel.php#comments</comments>
		<pubDate>Thu, 03 Jun 2010 22:00:13 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=426</guid>
		<description><![CDATA[We introduced commanding in <a href="http://goblincave.net/05/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-4-of-n-%E2%80%93-commanding.php">part 4</a> and so far we have mostly been trying to get to the point where we can actually see something on the screen - and now we will look at the data behind the view. Enter the ViewModel. The responsebility of the ViewModel (in my version, at least) is to act as a mediator between the (dumb) View and the Model.]]></description>
		<wfw:commentRss>http://goblincave.net/06/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-5-of-n-%e2%80%93-customersviewmodel.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>M-V-VM Building an ERP-system – part 4 of N – commanding</title>
		<link>http://goblincave.net/05/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-4-of-n-%e2%80%93-commanding.php</link>
		<comments>http://goblincave.net/05/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-4-of-n-%e2%80%93-commanding.php#comments</comments>
		<pubDate>Mon, 31 May 2010 19:20:29 +0000</pubDate>
		<dc:creator>GoblinHero</dc:creator>
				<category><![CDATA[* Coding]]></category>
		<category><![CDATA[English posts]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[mvvm]]></category>
		<category><![CDATA[ViewModel]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://goblincave.net/?p=405</guid>
		<description><![CDATA[After <a href="http://goblincave.net/05/2010/m-v-vm-building-an-erp-system-%E2%80%93-part-3-of-n-%E2%80%93-the-first-viewmodels.php">part 3</a>, we are getting ready to tie things together and as many might know, WPF contains the really nice ICommand interface that implements well with buttons, menus and inputbindings (go .Net 4.0). Back when I started out with WPF I used a lot of standalone implementations of the ICommand interface. It made for very nicely encapsulated commands, but there were problems. I put them into ResourceDictionaries for sharing them between views, but soon I had an overwhelming number of them, and naming became a problem. Also, maintainability proved troublesome. Having scattered business-logic scattered out into all these little classes that I couldn't use DI (Dependency Injection) on proved a maintenance nightmare and ResourceDictionaries proved brittle (magic strings, anyone?). Testability wasn't all that great either, and most of the commands were mostly doing boxing and un-boxing and IoC (Inversion of Control) resolution.]]></description>
		<wfw:commentRss>http://goblincave.net/05/2010/m-v-vm-building-an-erp-system-%e2%80%93-part-4-of-n-%e2%80%93-commanding.php/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
