<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Genesis Conduit</title>
	<atom:link href="http://genesisconduit.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://genesisconduit.wordpress.com</link>
	<description>UI design, development, and architecture in WPF, Silverlight, and ASP.NET</description>
	<lastBuildDate>Tue, 19 Aug 2008 14:46:01 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='genesisconduit.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/cae0567587ceec10514e02c842b49635?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Genesis Conduit</title>
		<link>http://genesisconduit.wordpress.com</link>
	</image>
			<item>
		<title>The Neglected Panel: UniformGrid</title>
		<link>http://genesisconduit.wordpress.com/2008/08/19/the-neglected-panel-uniformgrid/</link>
		<comments>http://genesisconduit.wordpress.com/2008/08/19/the-neglected-panel-uniformgrid/#comments</comments>
		<pubDate>Tue, 19 Aug 2008 14:45:13 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=110</guid>
		<description><![CDATA[In WPF there are Panels that get used often: the Canvas, DockPanel, Grid, StackPanel, and even the WrapPanel. These Panels feel a lot of love. The UniformGrid, not so much. While most Panels are displayed proudly in System.Windows.Controls, the UniformGrid has been pushed into the Primitives namespace along side the TabPanel and the ToolBarPanel, both of which [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=110&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>In WPF there are Panels that get used often: the Canvas, DockPanel, Grid, StackPanel, and even the WrapPanel. These Panels feel a lot of love. The UniformGrid, not so much. While most Panels are displayed proudly in System.Windows.Controls, the UniformGrid has been pushed into the Primitives namespace along side the TabPanel and the ToolBarPanel, both of which are too specialized to be given any real attention.</p>
<p>The UniformGrid is a great Panel to keep in mind. Once you do you&#8217;ll use it more often than you think. It does what the name implies, it lays out its children in a grid with uniform cells. You can specify <strong>neither</strong> the Rows or Columns, in which case it creates a square grid (3 x 3, 4 x 4, etc). You can specify <strong>either</strong> Rows or Columns, in which case it forces that number of cells in the given direction. For example, specifying 2 columns and providing six children would result in a 2w x 3h grid, providing one child would result in a 2w x 1h grid. Finally, you can specify <strong>both </strong>Rows and Columns, creating a grid of a fixed size. If you specify both Rows and Columns and provide more children than there are cells then the extra children will not be displayed. Finally, by placing the UniformGrid in a ScrollViewer and binding the size of the UniformGrid to a multiple of the actual size of it&#8217;s parent, you can achieve some great results.</p>
<p>Here are some of my common uses for the UniformGrid:</p>
<ul>
<li>Laying out icons in a uniform way (think of the iPhone home screen)</li>
<li>Photo or video galleries where every item should be the same size</li>
<li>Specifying Rows=&#8221;1&#8243; and providing only two children for side by side comparisons</li>
<li>Even spacing of children with a fixed size</li>
<li>Using it as a uniform StackPanel by specifying either Rows=&#8221;1&#8243; or Columns=&#8221;1&#8243;</li>
<li>A quick way to layout controls, such as in a sandbox application</li>
</ul>
<p>If you have any more good uses for this neglected little fella leave a comment. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/110/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/110/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/110/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/110/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/110/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=110&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/08/19/the-neglected-panel-uniformgrid/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>Parts &amp; States Model with VisualStateManager</title>
		<link>http://genesisconduit.wordpress.com/2008/08/10/parts-states-model-with-visualstatemanager/</link>
		<comments>http://genesisconduit.wordpress.com/2008/08/10/parts-states-model-with-visualstatemanager/#comments</comments>
		<pubDate>Sun, 10 Aug 2008 17:29:42 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=103</guid>
		<description><![CDATA[I was going to write my own entry on the Parts &#38; States Model for defining contracts between a control&#8217;s logic and visuals but you can&#8217;t get much better than this article by Karen Corby. Check it out.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=103&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I was going to write my own entry on the Parts &amp; States Model for defining contracts between a control&#8217;s logic and visuals but you can&#8217;t get much better than this <a href="http://scorbs.com/2008/06/11/parts-states-model-with-visualstatemanager-part-1-of" target="_blank">article</a> by Karen Corby. Check it out.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/103/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/103/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=103&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/08/10/parts-states-model-with-visualstatemanager/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>Click Weight</title>
		<link>http://genesisconduit.wordpress.com/2008/07/13/click-weight/</link>
		<comments>http://genesisconduit.wordpress.com/2008/07/13/click-weight/#comments</comments>
		<pubDate>Sun, 13 Jul 2008 01:54:16 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[UI Design]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=27</guid>
		<description><![CDATA[I often hear people mention that an operation or action takes &#8220;too many clicks&#8221;. Clicks themselves are relatively harmless critters. On their own they&#8217;re small, innocuous actions that put little burden on the user experience. What can impact the overall user experience is the weight of each click. Ten clicks with little weight will flow [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=27&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I often hear people mention that an operation or action takes &#8220;too many clicks&#8221;. Clicks themselves are relatively harmless critters. On their own they&#8217;re small, innocuous actions that put little burden on the user experience. What can impact the overall user experience is the weight of each click. Ten clicks with little weight will flow effortlessly from the user, but a few heavy clicks can really kill a user&#8217;s rhythm. A click&#8217;s weight falls into four main categories:</p>
<p><strong>Decision Time</strong></p>
<p>This is the time it takes for a user to decide that they need to click on something.</p>
<p>Suggestions: This greatly depends on your application. If your application will be used frequently then the user&#8217;s decision time will decrease as they learn how to use it (this may also apply to second guessing). If your application will not be used frequently then it&#8217;s best to make available actions obvious and to appeal to the user&#8217;s past experiences by making it familiar.</p>
<p><strong>Seek Time</strong></p>
<p>This is the time it takes a user to visually locate a button (or link) and move the mouse to that location. For keyboard users it&#8217;s the time it takes to decipher the appropriate hot key.</p>
<p>Suggestions: Use gestalt theory to drive the layout of your UI. Group similar items and make available actions obvious. Provide gestures that mimic the minipulation of physical objects. Use animation, brightness, and contrast to guide the user&#8217;s eye. Make shortcut keys apparent. Keep accessibility in mind (especially color blindness).</p>
<p><strong>Second Guessing</strong></p>
<p>Users guess frequently when using an interface, drawing on past experiences, but second guessing adds weight to a click. What will happen when I click? Will the application act immediately or will I be prompted first? What risk is involved with this operation? Can the operation be undone?</p>
<p>Suggestions: Build on the user&#8217;s past experiences. Add an ellipsis when a dialog precedes an action. Properly warn users of the risk. Don&#8217;t group actions that can&#8217;t be undone with those that can. Experiment with positioning and scale to communicate weight. Use expressive iconography. Provide extended &#8221;helptips&#8221; rather than tooltips. Remember that users are less likely to second guess when they trust your application.</p>
<p><strong>Wait Time</strong></p>
<p>This is the time spent waiting after a click is performed.</p>
<p>Suggestions: Never allow the UI to lock or freeze (I cannot emphasize this enough). Provide visual feedback of progress. Provide detailed feedback of long running operations. If an operation can be performed asynchronously then don&#8217;t force the user to wait for it to complete. Perceived performance has great deal of influence, time flies when you&#8217;re occupied.</p>
<p>When designing an application think about how you can make a click weigh less if you&#8217;re unable to remove it completely, or if it wouldn&#8217;t make sense to do so.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/27/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/27/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/27/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/27/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/27/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=27&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/07/13/click-weight/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>Splash Screens in WPF 3.5 SP1</title>
		<link>http://genesisconduit.wordpress.com/2008/07/09/splash-screens-in-wpf-35-sp1/</link>
		<comments>http://genesisconduit.wordpress.com/2008/07/09/splash-screens-in-wpf-35-sp1/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 23:20:44 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=22</guid>
		<description><![CDATA[WPF 3.5 SP1 will allow a custom image to be used as a spash screen. The display of this splash screen is implemented in native code and therefore will display fairly quickly while WPF spins up. When your application loads the splash screen will fade out.
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=22&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>WPF 3.5 SP1 will allow a custom image to be used as a spash screen. The display of this splash screen is implemented in native code and therefore will display fairly quickly while WPF spins up. When your application loads the splash screen will fade out.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/22/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/22/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/22/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/22/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/22/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=22&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/07/09/splash-screens-in-wpf-35-sp1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>Data Objects, Interfaces, and WPF</title>
		<link>http://genesisconduit.wordpress.com/2008/07/09/data-objects-interfaces-and-wpf/</link>
		<comments>http://genesisconduit.wordpress.com/2008/07/09/data-objects-interfaces-and-wpf/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 16:52:31 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=21</guid>
		<description><![CDATA[Here are some nifty interfaces to think about when creating data objects that will be used in a WPF application. I&#8217;ve intentionally kept these descriptions very brief.
System.ComponentModel.INotifyPropertyChanged
This is probably one of the most common interfaces to implement in your data objects. Implementing this interface allows you to notify WPF that a property has changed when the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=21&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Here are some nifty interfaces to think about when creating data objects that will be used in a WPF application. I&#8217;ve intentionally kept these descriptions very brief.</p>
<p><strong><a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifypropertychanged.aspx">System.ComponentModel.INotifyPropertyChanged</a></strong></p>
<p>This is probably one of the most common interfaces to implement in your data objects. Implementing this interface allows you to notify WPF that a property has changed when the data object is data bound.</p>
<p><strong><a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.idataerrorinfo.aspx">System.ComponentModel.IDataErrorInfo</a></strong></p>
<p>In .NET 3.5 WPF looks for this interface when data binding. This interface allows you to mark properties on your object as being in an erroneous state. On your Binding object set ValidatesOnDataErrors to true to enable this behavior.</p>
<p><strong><a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.ieditableobject.aspx">System.ComponentModel.IEditableObject</a></strong></p>
<p>In .NET 3.5 SP1 WPF included the IEditableCollectionView. When using the IEditableCollectionView, IEditableObject allows you to handle the transactional editing of your individial data objects using BeginEdit(), EndEdit(), and CancelEdit().</p>
<p><strong><a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.isupportinitialize.aspx">System.ComponentModel.ISupportInitialize</a></strong></p>
<p>If you need your data object to perform an action after WPF has set each property from Xaml, this is the interface you need to implement. WPF will call EndInit() when all the properties have been set.</p>
<p>Which ones did I miss? Which interfaces do you think are important to keep in mind when creating data objects?</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/21/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/21/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/21/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=21&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/07/09/data-objects-interfaces-and-wpf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>Alan Turing</title>
		<link>http://genesisconduit.wordpress.com/2008/07/05/alan-turing/</link>
		<comments>http://genesisconduit.wordpress.com/2008/07/05/alan-turing/#comments</comments>
		<pubDate>Sat, 05 Jul 2008 03:01:28 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[People]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=12</guid>
		<description><![CDATA[Jeff Atwood (of Coding Horror) has an article about Alan Turing, please check it out. Alan Turing is widely considered to be the father of modern computer science. He was also greatly responsible for breaking the Enigma code during World War II. In January of 1952, Alan Turing was arrested for having sex with another man. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=12&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Jeff Atwood (of Coding Horror) has an <a href="http://www.codinghorror.com/blog/archives/001143.html">article</a> about <a href="http://en.wikipedia.org/wiki/Alan_Turing">Alan Turing</a>, please check it out. Alan Turing is widely considered to be the father of modern computer science. He was also greatly responsible for breaking the Enigma code during World War II. In January of 1952, Alan Turing was arrested for having sex with another man. As part of his conviction, he was forced to take estrogen hormone injections or risk going to jail. On June 7th, 1954 Alan Turing killed himself by eating half of a poisoned apple, he was 41.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/12/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/12/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=12&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/07/05/alan-turing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>WPF, Images, and DPI Independence</title>
		<link>http://genesisconduit.wordpress.com/2008/07/05/wpf-images-and-dpi-independence/</link>
		<comments>http://genesisconduit.wordpress.com/2008/07/05/wpf-images-and-dpi-independence/#comments</comments>
		<pubDate>Sat, 05 Jul 2008 01:30:07 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=9</guid>
		<description><![CDATA[When many people first bind a bitmap image (say a PNG, or JPG) to an Image control in WPF, an overly astute developer might scratch his or her head and think &#8220;Why is my image 33% too big?&#8221;
It all boils down to DPI. Say you have a 720px x 720px image at 72dpi (many images [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=9&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>When many people first bind a bitmap image (say a PNG, or JPG) to an Image control in WPF, an overly astute developer might scratch his or her head and think &#8220;Why is my image 33% too big?&#8221;</p>
<p>It all boils down to DPI. Say you have a 720px x 720px image at 72dpi (many images have a DPI of 72). Physically, this image would be 10in x 10in. WPF will maintain this size, and since WPF defaults to 96dpi, at 10in x 10in the image is shown on the screen as 960px x 960px, 33% bigger than it&#8217;s original size.</p>
<p>Noodle on that for awhile and you&#8217;ll realize that although it&#8217;s a stumbling point, it is indeed the correct behavior. Images should display according to their intended DPI. Images with a DPI below 96 will be scaled up, and those with a DPI above 96 will be scaled down (assuming you have not changed your machine&#8217;s native DPI).</p>
<p>The problem is that the WPF team has provided no easy means by which to say &#8220;I want to ignore the DPI of the image, give it to me in its original pixel size.&#8221; This behavior is often the desired one when building a simple image editor for example.</p>
<p>Wouldn&#8217;t it be great if you could set a property called ScalingBehavior to DpiAdjusted or OriginalPixelSize? Well, you can&#8217;t, not yet anyway. There is a solution however:</p>
<div style="font-family:Consolas;font-size:12pt;color:black;background:white;">
<p style="margin:0;"><span style="color:#0000ff;">&lt;</span><span style="color:#a31515;">Image</span><span style="color:#ff0000;"> Source</span><span style="color:#0000ff;">=&#8221;{</span><span style="color:#a31515;">Binding</span><span style="color:#0000ff;"> &#8230;}&#8221;</span><span style="color:#ff0000;"> Stretch</span><span style="color:#0000ff;">=&#8221;Uniform&#8221;</span><span style="color:#ff0000;"> Width</span><span style="color:#0000ff;">=&#8221;{</span><span style="color:#a31515;">Binding</span><span style="color:#ff0000;"> Source</span><span style="color:#0000ff;">.</span><span style="color:#ff0000;">PixelWidth</span><span style="color:#0000ff;">,</span><span style="color:#ff0000;">RelativeSource</span><span style="color:#0000ff;">={</span><span style="color:#a31515;">RelativeSource</span><span style="color:#ff0000;"> Self</span><span style="color:#0000ff;">}}&#8221;</span><span style="color:#ff0000;"> Height</span><span style="color:#0000ff;">=&#8221;{</span><span style="color:#a31515;">Binding</span><span style="color:#ff0000;"> Source</span><span style="color:#0000ff;">.</span><span style="color:#ff0000;">PixelHeight</span><span style="color:#0000ff;">,</span><span style="color:#ff0000;">RelativeSource</span><span style="color:#0000ff;">={</span><span style="color:#a31515;">RelativeSource</span><span style="color:#ff0000;"> Self</span><span style="color:#0000ff;">}}&#8221; /&gt;</span></p>
<p style="margin:0;"> </p>
</div>
<p>Here we&#8217;ve set Stretch to Uniform and bound the Width and Height to the PixelWidth and PixelHeight of the Source, effectively ignoring DPI. The image however will not be pixel perfect, even when using SnapToDevicePixels (which simply snaps the borders, not pixels within the image). However, WPF in 3.5 SP1 will support a NearestNeighbor BitmapScalingMode, which should correct this.</p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/9/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/9/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/9/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/9/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/9/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=9&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/07/05/wpf-images-and-dpi-independence/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
		<item>
		<title>The Missing SDLC Phase</title>
		<link>http://genesisconduit.wordpress.com/2008/07/05/the-missing-sdlc-phase/</link>
		<comments>http://genesisconduit.wordpress.com/2008/07/05/the-missing-sdlc-phase/#comments</comments>
		<pubDate>Sat, 05 Jul 2008 01:22:36 +0000</pubDate>
		<dc:creator>genesisconduit</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Creative Thinking]]></category>
		<category><![CDATA[Project Management]]></category>

		<guid isPermaLink="false">http://genesisconduit.wordpress.com/?p=7</guid>
		<description><![CDATA[In most Software Development Life-Cycle (SDLC) models, the first phase is often considered to be planning and analysis. In a real world scenario this often translates into gathering requirements, writing specifications, and so on. However, I believe this methodology skips an important step.
When a project begins, even when specific needs are put forth, it is [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=7&subd=genesisconduit&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>In most Software Development Life-Cycle (SDLC) models, the first phase is often considered to be planning and analysis. In a real world scenario this often translates into gathering requirements, writing specifications, and so on. However, I believe this methodology skips an important step.</p>
<p>When a project begins, even when specific needs are put forth, it is in an abstract state and the path ahead is vague and unclear.</p>
<p>Think of this vague state as a blank sketchbook, an empty sheet of paper, or a table top covered with a plethora of Lego bricks. As an artist/writer/builder do you plan and analyze the path ahead or you or do you explore your medium? An artist will free sketch, a writer will free write, and a kid (or adult) with Lego bricks will pick up seemingly random pieces and snap them together.</p>
<p>This is an important and well respected process in many disciplines, and yet one largely ignored by the software development industry. Why deny people their natural urge to play with what&#8217;s at hand and discover what&#8217;s possible? Why suppress the natural human mechanism that leads to truly creative thinking?</p>
<p>A logical discipline such as software development does not preclude the need for creativity. Creating software is as much about innovation, a creative process, as it is of logic and reason.</p>
<p>Creative thinking and logical analysis cannot drive one&#8217;s thought-process simultaneously without one being a burden on the other.</p>
<p>Therefore, the first phase of the SDLC should not be planning and analysis, it should be a distict phase dedicated solely to a creative thought process. Every member of the team should be given the freedom to explore their own ideas. Concepts should be expanded, ideas researched, sketches drawn, prototypes developed, and possibilities discovered. Meet with stakeholders and share in dialog that&#8217;s driven by imagination and not requirements. Where once was an empty space, a vacuum, a blank canvas, there is now a living source of inspiration. This inspiration is the seed from which a truly successful software project can grow and thrive, inspiration often stillborn in our current landscape.</p>
<p>Please see the following for more insight into creative thinking:</p>
<p><a href="http://www.copyblogger.com/mental-blocks-creative-thinking/" target="_blank">10 Mental Blocks to Creative Thinking</a></p>
<img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/genesisconduit.wordpress.com/7/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/genesisconduit.wordpress.com/7/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/genesisconduit.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/genesisconduit.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/genesisconduit.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/genesisconduit.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/genesisconduit.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/genesisconduit.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/genesisconduit.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/genesisconduit.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/genesisconduit.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/genesisconduit.wordpress.com/7/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=genesisconduit.wordpress.com&blog=4144884&post=7&subd=genesisconduit&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://genesisconduit.wordpress.com/2008/07/05/the-missing-sdlc-phase/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/a94271e454062b985d87e67c4cad5cd7?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">genesisconduit</media:title>
		</media:content>
	</item>
	</channel>
</rss>