<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>ailon's DevBlog</title>
    <description>Development related stuff in my life</description>
    <link>http://devblog.ailon.org/devblog/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.Net Syndication Generator 1.0.0.0 (http://dotnetblogengine.net/)</generator>
    <language>en-GB</language>
    <blogChannel:blogRoll>http://devblog.ailon.org/devblog/opml.axd</blogChannel:blogRoll>
    <blogChannel:blink>http://www.dotnetblogengine.net/syndication.axd</blogChannel:blink>
    <dc:creator>Alan Mendelevich</dc:creator>
    <dc:title>ailon's DevBlog</dc:title>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/devblogailonorg" type="application/rss+xml" /><item>
      <title>amCharts for WPF with Scatter &amp;amp; Bubble Chart Support</title>
      <description>&lt;p&gt;&lt;img title="bubble chart for WPF" alt="bubble chart for WPF" src="http://wpf.amcharts.com/lib/screenshots/xydemo500.jpg" /&gt; &lt;/p&gt;  &lt;p&gt;We’ve released a new version of &lt;a href="http://wpf.amcharts.com/xy/"&gt;amCharts for WPF&lt;/a&gt; with support for &lt;a href="http://wpf.amcharts.com/xy/"&gt;Scatter (XY) &amp;amp; Bubble charting&lt;/a&gt;. Check it out and help us spread the word. Thanks!&lt;/p&gt; &lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwpf.amcharts.com%2fnews%2fscatter-bubble-chart-for-wpf-released"&gt;&lt;img border="0" alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwpf.amcharts.com%2fnews%2fscatter-bubble-chart-for-wpf-released" /&gt;&lt;/a&gt; &lt;a href="http://dotnetshoutout.com/Scatter-Bubble-Chart-Control-for-WPF" rev="vote-for"&gt;&lt;img style="border-right-width: 0px; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" alt="Shout it" src="http://dotnetshoutout.com/image.axd?url=http%3A%2F%2Fwpf.amcharts.com%2Fnews%2Fscatter-bubble-chart-for-wpf-released" /&gt;&lt;/a&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx&amp;amp;title=amCharts for WPF with Scatter &amp;amp; Bubble Chart Support" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx&amp;amp;title=amCharts for WPF with Scatter &amp;amp; Bubble Chart Support" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx&amp;amp;title=amCharts for WPF with Scatter &amp;amp; Bubble Chart Support" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/YWxYhFi2aYo" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/YWxYhFi2aYo/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=4e910a52-c489-417a-9e97-44f1f60bce36</guid>
      <pubDate>Fri, 10 Jul 2009 09:16:27 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=4e910a52-c489-417a-9e97-44f1f60bce36</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=4e910a52-c489-417a-9e97-44f1f60bce36</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/07/amCharts-for-WPF-with-Scatter-amp3b-Bubble-Chart-Support.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=4e910a52-c489-417a-9e97-44f1f60bce36</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=4e910a52-c489-417a-9e97-44f1f60bce36</feedburner:origLink></item>
    <item>
      <title>Creating Gapped and Bulleted Shapes in WPF/Silverlight</title>
      <description>&lt;p&gt;&lt;img src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/Downloads_D3C9/bulletedpath_3.png" /&gt; &lt;/p&gt;  &lt;p&gt;I’ve released a small control for creating bulleted paths in WPF. You can get it in &lt;a href="http://devblog.ailon.org/devblog/page/Downloads.aspx"&gt;download section&lt;/a&gt; of this blog. The main trick used in this control is described in my article titled “&lt;a href="http://www.dev102.com/2009/05/25/creating-gapped-and-bulleted-shapes-in-wpfsilverlight/"&gt;Creating Gapped and Bulleted Shapes in WPF/Silverlight&lt;/a&gt;” and published by &lt;a href="http://dev102.com/"&gt;dev102.com&lt;/a&gt;.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx&amp;amp;title=Creating Gapped and Bulleted Shapes in WPF/Silverlight" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx&amp;amp;title=Creating Gapped and Bulleted Shapes in WPF/Silverlight" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx&amp;amp;title=Creating Gapped and Bulleted Shapes in WPF/Silverlight" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/vg_K7SRzNmM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/vg_K7SRzNmM/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=f9306bb8-af4f-49bc-9fe8-a2bb3653b15d</guid>
      <pubDate>Tue, 26 May 2009 10:08:37 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=f9306bb8-af4f-49bc-9fe8-a2bb3653b15d</pingback:target>
      <slash:comments>11</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=f9306bb8-af4f-49bc-9fe8-a2bb3653b15d</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/05/Creating-Gapped-and-Bulleted-Shapes-in-WPFSilverlight.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=f9306bb8-af4f-49bc-9fe8-a2bb3653b15d</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=f9306bb8-af4f-49bc-9fe8-a2bb3653b15d</feedburner:origLink></item>
    <item>
      <title>Name scopes within templates are not supported</title>
      <description>&lt;p&gt;I’ve got an &lt;a href="http://wpf.amcharts.com/forum/viewtopic.php?id=18"&gt;issue&lt;/a&gt; reported on &lt;a href="http://wpf.amcharts.com/"&gt;amCharts for WPF&lt;/a&gt; forum suggesting that it’s impossible to use the charts in DataTemplate. I’ve verified that it was true and exception message reads as follows:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;quot;NameScopeProperty found within the content of a FrameworkTemplate, on a 'AmCharts.Windows.LineChart' object. Name scopes within templates are not supported.&amp;quot;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;The exception was caused by the call to SetNameSpace method in the constructor of the chart base class:&lt;/p&gt;  &lt;pre class="code"&gt;&lt;span style="color: #2b91af"&gt;NameScope&lt;/span&gt;.SetNameScope(&lt;span style="color: blue"&gt;this&lt;/span&gt;, &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;NameScope&lt;/span&gt;());&lt;/pre&gt;

&lt;p&gt;I’ve re-read &lt;a href="http://msdn.microsoft.com/en-us/library/ms746659.aspx"&gt;documentation on name scopes&lt;/a&gt; and made an assumption that I have to find a way to use template’s own name scope to register my names with it and…&amp;#160; spent almost a day trying to figure out how to do it universally.&lt;/p&gt;

&lt;p&gt;Finally I gave up on that branch of thought and decided to try something else. To my surprise the problem was solved by simply moving the same call to SetNameScope() from constructor to a place right before it is needed. Namely where I make the first call to RegisterName() which happens after my controls have been loaded, templates applied, etc.&lt;/p&gt;

&lt;p&gt;Now I’m not completely sure why this worked but my understanding is that if you do it in the constructor SetNameScope() get’s called in the context of the Template (producing an exception above) and when it is called later it’s already in context of the control to which the Template is applied. Please, correct me if I’m wrong.&lt;/p&gt;

&lt;p&gt;&lt;a target="_blank" href="http://www.dotnetkicks.com/kick/?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx&amp;amp;title=Name scopes within templates are not supported"&gt;
                    &lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;
                  &lt;/a&gt;
&lt;a rev="vote-for" href="http://dotnetshoutout.com/Name-scopes-within-templates-are-not-supported"&gt;&lt;img alt="Shout it" src="http://dotnetshoutout.com/image.axd?url=http%3A%2F%2Fdevblog.ailon.org%2Fdevblog%2Fpost%2F2009%2F05%2FName-scopes-within-templates-are-not-supported.aspx" style="border:0px" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx&amp;amp;title=Name scopes within templates are not supported" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx&amp;amp;title=Name scopes within templates are not supported" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx&amp;amp;title=Name scopes within templates are not supported" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/0t8qqEzYNqs" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/0t8qqEzYNqs/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=f26d79c7-e658-441e-99bf-e992c7306528</guid>
      <pubDate>Fri, 08 May 2009 15:03:59 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=f26d79c7-e658-441e-99bf-e992c7306528</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=f26d79c7-e658-441e-99bf-e992c7306528</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/05/Name-scopes-within-templates-are-not-supported.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=f26d79c7-e658-441e-99bf-e992c7306528</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=f26d79c7-e658-441e-99bf-e992c7306528</feedburner:origLink></item>
    <item>
      <title>4 Tips for WPF Control Developers</title>
      <description>&lt;p&gt;Dev102.com has published my article titled &lt;a title="4 Great Tips for Custom WPF Controls Developers" href="http://www.dev102.com/2009/05/04/4-grea-tips-for-custom-wpf-controls-developers/"&gt;4 Great Tips for Custom WPF Controls Developers&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Bonus tip:&lt;/strong&gt; there’s a 50% discount coupon for &lt;a href="http://wpf.amcharts.com/"&gt;amCharts for WPF&lt;/a&gt; at the end of that article ;)&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx&amp;amp;title=4 Tips for WPF Control Developers" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx&amp;amp;title=4 Tips for WPF Control Developers" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx&amp;amp;title=4 Tips for WPF Control Developers" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/WpHQlcXqamM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/WpHQlcXqamM/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=a547153a-7a45-4e04-a134-96a7e24d263e</guid>
      <pubDate>Tue, 05 May 2009 09:52:22 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=a547153a-7a45-4e04-a134-96a7e24d263e</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=a547153a-7a45-4e04-a134-96a7e24d263e</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/05/4-Tips-for-WPF-Control-Developers.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=a547153a-7a45-4e04-a134-96a7e24d263e</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=a547153a-7a45-4e04-a134-96a7e24d263e</feedburner:origLink></item>
    <item>
      <title>Book Review: Pro WPF in C# 2008: Windows Presentation Foundation with .NET 3.5, Second Edition by Matthew MacDonald</title>
      <description>&lt;p&gt;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/BookRev.5SecondEditionbyMatthewMacDonald_BD10/prowpf_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 5px 5px; display: inline; border-top: 0px; border-right: 0px" title="prowpf" border="0" alt="prowpf" align="right" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/BookRev.5SecondEditionbyMatthewMacDonald_BD10/prowpf_thumb.png" width="120" height="159" /&gt;&lt;/a&gt; After a pretty bland and unexciting ASP.NET book this was a very good change. Matthew MacDonald covers all aspects of WPF in a very good and interesting style. All the basics are covered, principles explained and practical advices are given.&lt;/p&gt;  &lt;p&gt;Probably my only but pretty serious complaint is about a Chapter 24 - Custom Elements. This was one of the main chapters (aside from basic WPF principles) why I bought this book in the first place. I was developing our &lt;a href="http://wpf.amcharts.com/"&gt;WPF charting controls&lt;/a&gt; and expected to find some insights and guidance in this chapter. Unfortunately a big chunk of the chapter (which is not so long to start with) was dedicated to explaining logical implications of building a masked text box. Probably quite interesting stuff on it’s own but not directly related to what it takes to build custom WPF elements in general.&lt;/p&gt;  &lt;p&gt;Aside from that I’m very satisfied with this book and can highly recommend it to any .NET/C# developer interested in programming for Windows Presentation Foundation.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Verdict: close to perfect&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.com/gp/product/1590599551?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=1590599551"&gt;Buy this book on Amazon&lt;/a&gt;.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx&amp;amp;title=Book Review: Pro WPF in C# 2008: Windows Presentation Foundation with .NET 3.5, Second Edition by Matthew MacDonald" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx&amp;amp;title=Book Review: Pro WPF in C# 2008: Windows Presentation Foundation with .NET 3.5, Second Edition by Matthew MacDonald" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx&amp;amp;title=Book Review: Pro WPF in C# 2008: Windows Presentation Foundation with .NET 3.5, Second Edition by Matthew MacDonald" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/Zx3NRYsFICM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/Zx3NRYsFICM/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=8368f80c-161f-4898-95eb-de8cc894ff4c</guid>
      <pubDate>Wed, 29 Apr 2009 13:42:00 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=8368f80c-161f-4898-95eb-de8cc894ff4c</pingback:target>
      <slash:comments>5</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=8368f80c-161f-4898-95eb-de8cc894ff4c</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Pro-WPF-in-C-2008-Windows-Presentation-Foundation-with-NET-352c-Second-Edition-by-Matthew-MacDonald.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=8368f80c-161f-4898-95eb-de8cc894ff4c</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=8368f80c-161f-4898-95eb-de8cc894ff4c</feedburner:origLink></item>
    <item>
      <title>amCharts for WPF 1.0 released</title>
      <description>&lt;img border="0" alt="Pie chart, Column chart, Line chart, Mixed column and line chart" src="http://wpf.amcharts.com/lib/screenshots/frontpagemix.png" width="500" height="332" /&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;We have &lt;a href="http://wpf.amcharts.com/news/amcharts-for-wpf-10-released"&gt;just released&lt;/a&gt; the final 1.0 version of &lt;a href="http://wpf.amcharts.com/"&gt;our charts for WPF&lt;/a&gt;. Hooray!&lt;/p&gt;  &lt;p&gt;Please, help me spread the word by &lt;a href="http://www.dotnetkicks.com/wpf/amCharts_release_WPF_edition_of_their_charting_bundle"&gt;kicking&lt;/a&gt;, &lt;a href="http://dotnetshoutout.com/amCharts-amCharts-fo-WPF-news-and-announcements"&gt;shouting&lt;/a&gt;, &lt;a href="http://www.dzone.com/links/amcharts_release_wpf_edition_of_their_charting_bu.html"&gt;dzoning&lt;/a&gt;, cross-posting and otherwise promoting the release. Thanks a million!&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx&amp;amp;title=amCharts for WPF 1.0 released" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx&amp;amp;title=amCharts for WPF 1.0 released" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx&amp;amp;title=amCharts for WPF 1.0 released" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/edS-yEHoh_0" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/edS-yEHoh_0/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=411d3bd5-56a7-4439-ba9e-274b118f16fd</guid>
      <pubDate>Mon, 27 Apr 2009 10:49:00 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=411d3bd5-56a7-4439-ba9e-274b118f16fd</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=411d3bd5-56a7-4439-ba9e-274b118f16fd</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/04/amCharts-for-WPF-10-released.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=411d3bd5-56a7-4439-ba9e-274b118f16fd</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=411d3bd5-56a7-4439-ba9e-274b118f16fd</feedburner:origLink></item>
    <item>
      <title>Book Review: Professional ASP.NET 3.5: In C# and VB</title>
      <description>&lt;p&gt;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/69485a75a1c7_DCDC/proaspnet_2.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 0px 5px 5px; display: inline; border-top: 0px; border-right: 0px" title="proaspnet" border="0" alt="proaspnet" align="right" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/69485a75a1c7_DCDC/proaspnet_thumb.jpg" width="100" height="125" /&gt;&lt;/a&gt; About a year ago I bought &lt;a href="http://www.amazon.com/gp/product/0470187573?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0470187573"&gt;this book&lt;/a&gt; when &lt;a href="http://weblogs.asp.net/scottgu/"&gt;Scott Guthrie&lt;/a&gt; promoted a deal on it at Amazon. This was probably the biggest technology book I’ve ever read and it took me months to read and not only because of the size but because it was boooring.&lt;/p&gt;  &lt;p&gt;Most of the book is written by Bill Evjen (as far as I understand) and his chapters are very dry and not very different from just browsing through MSDN documentation. There are almost no personal opinions, recommendations or anything. Just plain reference.&lt;/p&gt;  &lt;p&gt;Some chapters are written by &lt;a href="http://www.hanselman.com/"&gt;Scott Hanselman&lt;/a&gt; and you can see it right from the start. These chapters offer opinions, advices and you can see a person behind them. I don’t know, maybe it’s just me, but I prefer seeing a person behind a book or an article rather than reading a book which looks like it’s written by some technical documentation team. Unfortunately only a few chapters are authored by Scott.&lt;/p&gt;  &lt;p&gt;I couldn’t identify chapters by Devin Rader so he either writes indistinguishably from Bill or Scott :)&lt;/p&gt;  &lt;p&gt;The other point to criticize would be the fact that book has samples in both C# and VB. I understand that it’s easier to publish one book instead of two but the book could’ve been like 20-30% thinner and lighter and I wouldn’t have to decide against bringing it with me on the flight (yes, it’s that heavy). And, you know, 300-400 useless pages for almost every reader (either VB or C# developers) doesn’t help preserve Amazonia forests.&lt;/p&gt;  &lt;p&gt;Overall this is not a bad book if you are looking for printed ASP.NET reference but not quite a good read if you want some insight, recommendations and depth.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Verdict: complete but dry and boring.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Other recommended books about ASP.NET&lt;/em&gt;: 4 years ago I’ve read &lt;a href="http://www.amazon.com/gp/product/0735621772?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0735621772"&gt;Programming Microsoft ASP.NET 2.0 Applications: Advanced Topics&lt;/a&gt; by Dino Esposito and it was really good. Unfortunately it doesn’t seem that there’s an updated edition of this book by Dino, but there’s other book called &lt;a href="http://www.amazon.com/gp/product/0735625271?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0735625271"&gt;Programming Microsoft ASP.NET 3.5&lt;/a&gt;. I’m not sure how this new book is related to the older ones (in terms of topics) but I really like Dino Esposito’s style and depth of his books.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx&amp;amp;title=Book Review: Professional ASP.NET 3.5: In C# and VB" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx&amp;amp;title=Book Review: Professional ASP.NET 3.5: In C# and VB" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx&amp;amp;title=Book Review: Professional ASP.NET 3.5: In C# and VB" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/ofgDRHJ9wGo" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/ofgDRHJ9wGo/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=b30775a3-be20-4954-a492-dd645378e4d3</guid>
      <pubDate>Fri, 24 Apr 2009 16:29:00 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=b30775a3-be20-4954-a492-dd645378e4d3</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=b30775a3-be20-4954-a492-dd645378e4d3</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/04/Book-Review-Professional-ASPNET-35-In-C-and-VB.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=b30775a3-be20-4954-a492-dd645378e4d3</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=b30775a3-be20-4954-a492-dd645378e4d3</feedburner:origLink></item>
    <item>
      <title>Merging SVN branch back to trunk with TortoiseSVN</title>
      <description>&lt;p&gt;This post is mostly a note to self, cause if I don’t do this for some time I forget how to do it and spend quite some time figuring things out. Actually this is quite a simple task but awkwardly implemented (from my point of view). &lt;/p&gt;  &lt;p&gt;Now I did it for a second time in 2 weeks and managed to merge my branch back to trunk from the first attempt, so I decided it’s good ocassion to write things down so I don’t waste time the next time I forget the procedure.&lt;/p&gt;  &lt;p&gt;So, here’s what you do after you are finished working on your branch and want to merge everything back to trunk:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Make sure you’ve commited everything to your branch.&lt;/li&gt;    &lt;li&gt;Backup your whole working copy (just in case :)&lt;/li&gt;    &lt;li&gt;Switch your working copy to trunk: Right click-&amp;gt;TortoiseSVN-&amp;gt;Switch. Select your trunk URL, HEAD revision and press OK.&lt;/li&gt;    &lt;li&gt;Merge (this is the awkward part): Right click-&amp;gt;TortoiseSVN-&amp;gt;Merge. In from box select URL of your &lt;strong&gt;trunk&lt;/strong&gt; (HEAD revision), uncheck Use “From:” checkbox in To section and select &lt;strong&gt;branch&lt;/strong&gt; URL in To box. Test wit “Dry run” and press “Merge” if everything is correct.&lt;/li&gt;    &lt;li&gt;Commit to trunk&lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;That’s it.&lt;/p&gt;  &lt;p&gt;Bonus track: &lt;a href="http://blog.eleutian.com/2008/04/02/HowToBranchProperly.aspx"&gt;here’s a good article&lt;/a&gt; on minimizing merging conflicts when working on branches.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx&amp;amp;title=Merging SVN branch back to trunk with TortoiseSVN" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx&amp;amp;title=Merging SVN branch back to trunk with TortoiseSVN" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx&amp;amp;title=Merging SVN branch back to trunk with TortoiseSVN" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/1T18TVJuqgo" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/1T18TVJuqgo/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=06627327-d402-48ba-bc1d-5b0665990936</guid>
      <pubDate>Tue, 31 Mar 2009 16:38:35 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=06627327-d402-48ba-bc1d-5b0665990936</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=06627327-d402-48ba-bc1d-5b0665990936</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/03/Merging-SVN-branch-back-to-trunk-with-TortoiseSVN.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=06627327-d402-48ba-bc1d-5b0665990936</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=06627327-d402-48ba-bc1d-5b0665990936</feedburner:origLink></item>
    <item>
      <title>amCharts for WPF 1.0 Beta</title>
      <description>&lt;p&gt;&amp;#160;&lt;img title="100% stacked WPF column chart" alt="100% stacked WPF column chart" src="http://wpf.amcharts.com/lib/screenshots/columndemo450.jpg" /&gt; &lt;/p&gt;  &lt;p&gt;Just released the 1.0 Beta version of our &lt;a href="http://wpf.amcharts.com/"&gt;WPF charts&lt;/a&gt; bundle. Added support for &lt;a href="http://wpf.amcharts.com/column"&gt;column &amp;amp; bar charts&lt;/a&gt;.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx&amp;amp;title=amCharts for WPF 1.0 Beta" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx&amp;amp;title=amCharts for WPF 1.0 Beta" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx&amp;amp;title=amCharts for WPF 1.0 Beta" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/WDrqktoriuM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/WDrqktoriuM/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=ae05cb12-8ed2-42c6-a80a-7279fd9e8eda</guid>
      <pubDate>Mon, 30 Mar 2009 16:33:50 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=ae05cb12-8ed2-42c6-a80a-7279fd9e8eda</pingback:target>
      <slash:comments>3</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=ae05cb12-8ed2-42c6-a80a-7279fd9e8eda</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/03/amcharts-for-wpf-10-beta-released.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=ae05cb12-8ed2-42c6-a80a-7279fd9e8eda</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=ae05cb12-8ed2-42c6-a80a-7279fd9e8eda</feedburner:origLink></item>
    <item>
      <title>amCharts for WPF: Line &amp;amp; Area Chart Released</title>
      <description>&lt;p&gt;Just released &lt;a href="http://wpf.amcharts.com/"&gt;Line and Area charts for WPF&lt;/a&gt;. The announcement is &lt;a href="http://wpf.amcharts.com/news/line-area-chart-released"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a title="Line and Area charts for WPF" href="http://wpf.amcharts.com/"&gt;&lt;img title="amCharts WPF Line and Area charts" style="border-top-width: 0px; display: inline; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="295" alt="amCharts WPF Line and Area charts" src="http://wpf.amcharts.com/lib/screenshots/linedemo450.jpg" width="450" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Enjoy. And help us spread the word if you do!&lt;/p&gt; &lt;a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2fwpf.amcharts.com%2fnews%2fline-area-chart-released"&gt;&lt;img alt="kick it on DotNetKicks.com" src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%3a%2f%2fwpf.amcharts.com%2fnews%2fline-area-chart-released" border="0" /&gt;&lt;/a&gt; &lt;a href="http://dotnetshoutout.com/Line-and-Area-Charts-added-to-amCharts-for-WPF" rev="vote-for"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" alt="Shout it" src="http://dotnetshoutout.com/image.axd?url=http%3A%2F%2Fwpf.amcharts.com%2Fnews%2Fline-area-chart-released" /&gt;&lt;/a&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx&amp;amp;title=amCharts for WPF: Line &amp;amp; Area Chart Released" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx&amp;amp;title=amCharts for WPF: Line &amp;amp; Area Chart Released" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx&amp;amp;title=amCharts for WPF: Line &amp;amp; Area Chart Released" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/GDDQAZMMWq0" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/GDDQAZMMWq0/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=fdbca6b2-edda-46ec-83e2-32a2ab69b654</guid>
      <pubDate>Fri, 13 Mar 2009 12:53:44 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=fdbca6b2-edda-46ec-83e2-32a2ab69b654</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=fdbca6b2-edda-46ec-83e2-32a2ab69b654</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/03/line-area-chart-released.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=fdbca6b2-edda-46ec-83e2-32a2ab69b654</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=fdbca6b2-edda-46ec-83e2-32a2ab69b654</feedburner:origLink></item>
    <item>
      <title>Charts for WPF</title>
      <description>&lt;p&gt;I haven’t posted anything significant here for quite some time. That’s not because I’m lazy (that too), but because I’ve been busy working on &lt;a href="http://wpf.amcharts.com/"&gt;WPF edition&lt;/a&gt; of &lt;a href="http://www.amcharts.com/"&gt;amCharts&lt;/a&gt;. For those who don’t know, amCharts is one of the leading charting controls for web developed with Adobe Flash, and I’ve been working on &lt;a href="http://wpf.amcharts.com/"&gt;charts for WPF&lt;/a&gt; based on the know-how gathered in 2 years amCharts been out.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://wpf.amcharts.com/"&gt;&lt;img title="WPF charts" height="313" alt="WPF charts" src="http://wpf.amcharts.com/lib/screenshots/demo500.jpg" width="500" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Overall working with WPF was quite a pleasant change of scenery. There were some rought edges and you really have to turn your head around if you’ve only been dealing with web and/or Windows Forms before. But after some time you get used to it and it’s really amazing what you can do with it.&lt;/p&gt;  &lt;p&gt;So, if you are developing for Windows Presentation Foundation platform or plan too and you need a really flexible and powerful charting solution, take a look at &lt;a href="http://wpf.amcharts.com/"&gt;amCharts for WPF&lt;/a&gt;. And, btw, you can use it absolutely free even in commercial applications as long as you don’t mind a small link back to amCharts in the corner. Or you can purchase a commercial (link-free) license which are going with 75% discount for now.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx&amp;amp;title=Charts for WPF" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx&amp;amp;title=Charts for WPF" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx&amp;amp;title=Charts for WPF" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/vEQBY2UF2mg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/vEQBY2UF2mg/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=77d1ad26-8a36-42f5-9fdd-620d139b68bf</guid>
      <pubDate>Wed, 18 Feb 2009 16:29:05 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=77d1ad26-8a36-42f5-9fdd-620d139b68bf</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=77d1ad26-8a36-42f5-9fdd-620d139b68bf</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2009/02/Charts-for-WPF.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=77d1ad26-8a36-42f5-9fdd-620d139b68bf</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=77d1ad26-8a36-42f5-9fdd-620d139b68bf</feedburner:origLink></item>
    <item>
      <title>Html.ActionLink for images in ASP.NET MVC</title>
      <description>&lt;p&gt;
As far as I understand there will be some methods in the future versions of ASP.NET MVC to get the same raw URL that is generated by Html.ActionLink helper method so you can wrap an image (or whatever) with a link, but in the current release (Beta) there&amp;#39;s no such thing. 
&lt;/p&gt;
&lt;p&gt;
A quick google search revealed different ways people deal with this but first results weren&amp;#39;t about the simplest workaround I just used and it works for me. So, I thought that someone might find this useful too.
&lt;/p&gt;
&lt;p&gt;
The simple idea is just to place a marker as a link text and then just use simple string.Replace to place an image in place of the marker. Something like this:
&lt;/p&gt;
&lt;pre class="code"&gt;
&lt;span style="background: #ffee62"&gt;&amp;lt;%&lt;/span&gt;&lt;span style="color: blue"&gt;= &lt;/span&gt;Html.ActionLink(&lt;span style="color: #a31515"&gt;&amp;quot;__IMAGE_PLACEHOLDER__&amp;quot;&lt;/span&gt;, &lt;span style="color: #a31515"&gt;&amp;quot;Products&amp;quot;&lt;/span&gt;).Replace(&lt;span style="color: #a31515"&gt;&amp;quot;__IMAGE_PLACEHOLDER__&amp;quot;&lt;/span&gt;, &lt;span style="color: #a31515"&gt;&amp;quot;&amp;lt;img src=\&amp;quot;&amp;quot; &lt;/span&gt;+ myImgUrl + &lt;span style="color: #a31515"&gt;&amp;quot;\&amp;quot; /&amp;gt;&amp;quot;&lt;/span&gt;)&lt;span style="background: #ffee62"&gt;%&amp;gt;&lt;/span&gt;
&lt;/pre&gt;
&lt;p&gt;
Sure, this is not a very elegant solution but it works for me and it&amp;#39;s simple.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Update: &lt;/strong&gt;Oops. It appears that I wasn&amp;#39;t aware of UrlHelper class and it&amp;#39;s Action method which does just that (returns Action url). Thanks to James for pointing this out in the comments.
&lt;/p&gt;
&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx&amp;amp;title=Html.ActionLink for images in ASP.NET MVC" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx&amp;amp;title=Html.ActionLink for images in ASP.NET MVC" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx&amp;amp;title=Html.ActionLink for images in ASP.NET MVC" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/7XUXWABNjCY" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/7XUXWABNjCY/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=31648662-85d7-4537-b9d9-61ae6f676d7e</guid>
      <pubDate>Sat, 27 Dec 2008 13:35:00 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=31648662-85d7-4537-b9d9-61ae6f676d7e</pingback:target>
      <slash:comments>18</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=31648662-85d7-4537-b9d9-61ae6f676d7e</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/12/HtmlActionLink-for-images-in-ASPNET-MVC.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=31648662-85d7-4537-b9d9-61ae6f676d7e</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=31648662-85d7-4537-b9d9-61ae6f676d7e</feedburner:origLink></item>
    <item>
      <title>SPAW Editor v.2.0.8 and Flash Uploader</title>
      <description>&lt;p&gt;We (&lt;a href="http://www.solmetra.com"&gt;Solmetra&lt;/a&gt;) have released a new version of &lt;a href="http://spaweditor.com/en/disp.php/en_products/en_spaw/en_spaw_intro"&gt;SPAW Editor&lt;/a&gt; for both PHP and .NET. Download links &lt;a href="http://spaweditor.com/en/disp.php/en_products/en_spaw/en_spaw_download"&gt;here&lt;/a&gt;. More info &lt;a href="http://blog.solmetra.com/2008/08/29/spaw-editor-v208-released/"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;In other news we've released a new product aimed at web developers — &lt;a href="http://www.solmetra.com/uploader/"&gt;Flash Uploader&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/SPAWEditorv.2.0.8andFlashUploader_CAFC/uploader_shot_2.png"&gt;&lt;img height="242" alt="uploader_shot" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/SPAWEditorv.2.0.8andFlashUploader_CAFC/uploader_shot_thumb.png" width="418" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;It’s a highly customizable Flash-based control that replaces stagnant HTML’s &amp;lt;input type="file"&amp;gt; tag. It not only displays neat progress bar — a feature lacking in &amp;lt;input type="file"&amp;gt; tag — but also provides some pretty neat upload security features and client-side restrictions (i.e. file size and type) as well as JavaScript API. &lt;p&gt;&lt;a href="http://www.solmetra.com/uploader/"&gt;Give it a try&lt;/a&gt; and let us know what you think. Oh, and it’s free!&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx&amp;amp;title=SPAW Editor v.2.0.8 and Flash Uploader" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx&amp;amp;title=SPAW Editor v.2.0.8 and Flash Uploader" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx&amp;amp;title=SPAW Editor v.2.0.8 and Flash Uploader" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/ZmpQZBG7aAA" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/ZmpQZBG7aAA/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=530fa7ff-9ab1-435d-a27f-9c1c08550872</guid>
      <pubDate>Fri, 29 Aug 2008 14:29:10 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=530fa7ff-9ab1-435d-a27f-9c1c08550872</pingback:target>
      <slash:comments>20</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=530fa7ff-9ab1-435d-a27f-9c1c08550872</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/08/SPAW-Editor-v208-and-Flash-Uploader.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=530fa7ff-9ab1-435d-a27f-9c1c08550872</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=530fa7ff-9ab1-435d-a27f-9c1c08550872</feedburner:origLink></item>
    <item>
      <title>Add Interactive Flash Charts to Your ASP.NET Web Application. Part 4: Column Chart from Code-behind</title>
      <description>&lt;p&gt;&lt;em&gt;This is the fourth part in the series of tutorials showing how to add dynamic, interactive, data-driven charts to your ASP.NET web applications. These tutorials use &lt;/em&gt;&lt;a href="http://www.amcharts.com/"&gt;&lt;em&gt;amCharts&lt;/em&gt;&lt;/a&gt;&lt;em&gt; Flash charting components and "&lt;/em&gt;&lt;a href="http://www.amcharts.com/aspnet"&gt;&lt;em&gt;ASP.NET Controls for amCharts&lt;/em&gt;&lt;/a&gt;&lt;em&gt;" for ASP.NET integration.&lt;/em&gt; &lt;p&gt;This part is long overdue. Sorry for that. A tutorial on adding amCharts to ASP.NET page from code-behind was the most requested on &lt;a href="http://www.amcharts.com/forum/viewforum.php?id=16"&gt;amCharts ASP.NET controls forum&lt;/a&gt;. So, here we go. &lt;p&gt;Make sure you have your environment setup, &lt;a href="http://amcharts.com/aspnet/"&gt;ASP.NET controls for amCharts&lt;/a&gt; DLL added and &lt;a href="http://amcharts.com/column/"&gt;amCharts Column chart&lt;/a&gt; added to your project. Details on doing that were provided in &lt;a href="http://devblog.ailon.org/devblog/post/2008/03/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part1-Basics.aspx"&gt;Part 1 of the series&lt;/a&gt; so I wont repeat it here. &lt;p&gt;Now let's add a new ASP.NET web form to our project and let's call it &lt;em&gt;CodeBehindBar.aspx&lt;/em&gt;. We will only add a single PlaceHolder object to the markup side of our script so it looks like this:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="background: #ffee62"&gt;&amp;lt;%&lt;/span&gt;&lt;span style="color: blue"&gt;@ &lt;/span&gt;&lt;span style="color: #a31515"&gt;Page &lt;/span&gt;&lt;span style="color: red"&gt;Language&lt;/span&gt;&lt;span style="color: blue"&gt;="C#" &lt;/span&gt;&lt;span style="color: red"&gt;AutoEventWireup&lt;/span&gt;&lt;span style="color: blue"&gt;="true" &lt;/span&gt;&lt;span style="color: red"&gt;CodeFile&lt;/span&gt;&lt;span style="color: blue"&gt;="CodeBehindBar.aspx.cs" &lt;/span&gt;&lt;span style="color: red"&gt;Inherits&lt;/span&gt;&lt;span style="color: blue"&gt;="CodeBehindBar" &lt;/span&gt;&lt;span style="background: #ffee62"&gt;%&amp;gt;

&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #a31515"&gt;DOCTYPE &lt;/span&gt;&lt;span style="color: red"&gt;html PUBLIC &lt;/span&gt;&lt;span style="color: blue"&gt;"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;

&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;html &lt;/span&gt;&lt;span style="color: red"&gt;xmlns&lt;/span&gt;&lt;span style="color: blue"&gt;="http://www.w3.org/1999/xhtml" &amp;gt;
&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;head &lt;/span&gt;&lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;="server"&amp;gt;
    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;title&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;&lt;/span&gt;Untitled Page&lt;span style="color: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;title&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;head&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
&amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;body&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;form &lt;/span&gt;&lt;span style="color: red"&gt;id&lt;/span&gt;&lt;span style="color: blue"&gt;="form1" &lt;/span&gt;&lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;="server"&amp;gt;
    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;div&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
    &amp;lt;&lt;/span&gt;&lt;span style="color: #a31515"&gt;asp&lt;/span&gt;&lt;span style="color: blue"&gt;:&lt;/span&gt;&lt;span style="color: #a31515"&gt;PlaceHolder &lt;/span&gt;&lt;span style="color: red"&gt;ID&lt;/span&gt;&lt;span style="color: blue"&gt;="ChartPlaceHolder" &lt;/span&gt;&lt;span style="color: red"&gt;runat&lt;/span&gt;&lt;span style="color: blue"&gt;="server" /&amp;gt;
    &amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;div&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
    &amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;form&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;body&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
&amp;lt;/&lt;/span&gt;&lt;span style="color: #a31515"&gt;html&lt;/span&gt;&lt;span style="color: blue"&gt;&amp;gt;
&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;Now let's switch to the code-behind file.&lt;/p&gt;
&lt;p&gt;We will be creating a column chart with two graphs and we'll use &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46A0-8DA2-EEBC53A68034&amp;amp;displaylang=en"&gt;Northwind&lt;/a&gt; database as data source. The first graph will represent sales totals for 1997 grouped by category and divided by 1000 (just for the sake of being in the same range as our second graph). The second graph will show quantities of products in each group we have in stock.&lt;/p&gt;
&lt;p&gt;Make sure that you have access to some SQL Server instance with Northwind database installed, connection string setup, and let's start by pulling our data from SQL Server and placing it into DataSet:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color: green"&gt;// Get data from Northwind
&lt;/span&gt;&lt;span style="color: #2b91af"&gt;SqlConnection &lt;/span&gt;conn = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;SqlConnection&lt;/span&gt;(&lt;span style="color: #2b91af"&gt;ConfigurationManager&lt;/span&gt;.ConnectionStrings[&lt;span style="color: #a31515"&gt;"NorthwindConnectionString"&lt;/span&gt;].ConnectionString);

&lt;span style="color: #2b91af"&gt;SqlCommand &lt;/span&gt;myCommand = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;SqlCommand&lt;/span&gt;(&lt;span style="color: #a31515"&gt;"select CategoryName, CategorySales/1000 as CategorySales from [Category Sales for 1997]"&lt;/span&gt;, conn);
&lt;span style="color: #2b91af"&gt;SqlDataAdapter &lt;/span&gt;da = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;SqlDataAdapter&lt;/span&gt;(myCommand);
&lt;span style="color: #2b91af"&gt;DataSet &lt;/span&gt;ds = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;DataSet&lt;/span&gt;();
da.Fill(ds, &lt;span style="color: #a31515"&gt;"Category Sales for 1997"&lt;/span&gt;);

myCommand.CommandText = &lt;span style="color: #a31515"&gt;"select CategoryName, sum(UnitsInStock) as UnitsInStock from [Products by Category] group by CategoryName"&lt;/span&gt;;
da.Fill(ds, &lt;span style="color: #a31515"&gt;"Products by Category"&lt;/span&gt;);

conn.Close();
&lt;/pre&gt;
&lt;p&gt;Now it's time to create our chart. We create a ColumnChart object and setup it's DataSource. This is what will be used for the chart series (X axis).&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color: green"&gt;// create column chart
&lt;/span&gt;&lt;span style="color: #2b91af"&gt;ColumnChart &lt;/span&gt;chart = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;ColumnChart&lt;/span&gt;();
chart.DataSource = ds.Tables[&lt;span style="color: #a31515"&gt;"Category Sales for 1997"&lt;/span&gt;].DefaultView;
chart.DataSeriesIDField = &lt;span style="color: #a31515"&gt;"CategoryName"&lt;/span&gt;;
chart.DataSeriesValueField = &lt;span style="color: #a31515"&gt;"CategoryName"&lt;/span&gt;; &lt;span style="color: green"&gt;// here it's the same as ID and could've been ommited
&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;Notice that we've specified "CategoryName" as both SeriesIDField and SeriesValueField. This isn't necessary in case like this were we have the same field for both ID and Value. It would suffice to just specify the ID, but I've added Value line so you know you can use different data fields for that.&lt;/p&gt;
&lt;p&gt;What we've done so far is created a grid where to add actual data graphs. Now let's create 2 graphs:&lt;/p&gt;&lt;pre class="code"&gt;&lt;span style="color: green"&gt;// crete sales graph
&lt;/span&gt;&lt;span style="color: #2b91af"&gt;ColumnChartGraph &lt;/span&gt;graph1 = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;ColumnChartGraph&lt;/span&gt;();
graph1.DataSource = ds.Tables[&lt;span style="color: #a31515"&gt;"Category Sales for 1997"&lt;/span&gt;].DefaultView;
graph1.DataSeriesItemIDField = &lt;span style="color: #a31515"&gt;"CategoryName"&lt;/span&gt;;
graph1.DataValueField = &lt;span style="color: #a31515"&gt;"CategorySales"&lt;/span&gt;;
graph1.Title = &lt;span style="color: #a31515"&gt;"Sales (in thousands)"&lt;/span&gt;;

&lt;span style="color: green"&gt;// crete stock graph
&lt;/span&gt;&lt;span style="color: #2b91af"&gt;ColumnChartGraph &lt;/span&gt;graph2 = &lt;span style="color: blue"&gt;new &lt;/span&gt;&lt;span style="color: #2b91af"&gt;ColumnChartGraph&lt;/span&gt;();
graph2.DataSource = ds.Tables[&lt;span style="color: #a31515"&gt;"Products by Category"&lt;/span&gt;].DefaultView;
graph2.DataSeriesItemIDField = &lt;span style="color: #a31515"&gt;"CategoryName"&lt;/span&gt;;
graph2.DataValueField = &lt;span style="color: #a31515"&gt;"UnitsInStock"&lt;/span&gt;;
graph2.Title = &lt;span style="color: #a31515"&gt;"Units in stock"&lt;/span&gt;;
&lt;/pre&gt;
&lt;p&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;and add these graphs to our chart:&lt;/p&gt;&lt;pre class="code"&gt;chart.Graphs.Add(graph1);
chart.Graphs.Add(graph2);
&lt;/pre&gt;
&lt;p&gt;What's left is just data-binding the chart and adding it to our place holder control on the page&lt;/p&gt;&lt;pre class="code"&gt;chart.DataBind();
ChartPlaceHolder.Controls.Add(chart);
&lt;/pre&gt;
&lt;p&gt;&lt;a href="http://11011.net/software/vspaste"&gt;&lt;/a&gt;And that' basically it. This is what you should see if you run this:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/AddIntera.Part3ColumnChartfromCodebehind_880F/amcharts_code_behind_2.jpg"&gt;&lt;img height="521" alt="amcharts_code_behind" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/AddIntera.Part3ColumnChartfromCodebehind_880F/amcharts_code_behind_thumb.jpg" width="510" border="0"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;You can customize the look and feel by changing various properties according to your taste.&lt;/p&gt;
&lt;p&gt;Download the source code here: &lt;a href="http://devblog.ailon.org/_files/CodeBehindBar.zip"&gt;CodeBehindBar.zip (1kb)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://www.dotnetkicks.com/kick/?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx&amp;amp;title=Add Interactive Flash Charts to Your ASP.NET Web Application. Part 4: Column Chart from Code-behind"&gt;
                    &lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;
                  &lt;/a&gt;&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx&amp;amp;title=Add Interactive Flash Charts to Your ASP.NET Web Application. Part 4: Column Chart from Code-behind" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx&amp;amp;title=Add Interactive Flash Charts to Your ASP.NET Web Application. Part 4: Column Chart from Code-behind" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx&amp;amp;title=Add Interactive Flash Charts to Your ASP.NET Web Application. Part 4: Column Chart from Code-behind" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/j2IhXU2JmIk" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/j2IhXU2JmIk/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=d42fbf77-fe39-477f-92b4-acc40e72dc59</guid>
      <pubDate>Fri, 08 Aug 2008 10:29:36 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=d42fbf77-fe39-477f-92b4-acc40e72dc59</pingback:target>
      <slash:comments>29</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=d42fbf77-fe39-477f-92b4-acc40e72dc59</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/08/Add-Interactive-Flash-Charts-to-Your-ASPNET-Web-Application-Part-4-Column-Chart-from-Code-behind.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=d42fbf77-fe39-477f-92b4-acc40e72dc59</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=d42fbf77-fe39-477f-92b4-acc40e72dc59</feedburner:origLink></item>
    <item>
      <title>VS2008 Purchasing Part 3: Great Success... not really</title>
      <description>&lt;p&gt;I have 9 days left on my Visual Studio 2008 trial and suddenly "Upgrade..." button no longer leads to "Content not found" page. It was still "not found" a week ago or so, but now it looked promising. Unfortunately digital registration is only an option for customers in USA and Canada. So we (the rest of the world) are still out of luck.&lt;/p&gt; &lt;p&gt;So I assume I'll have to go the old-fashioned way and it sucks.&lt;/p&gt; &lt;p&gt;See also:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Part 1: &lt;a href="http://devblog.ailon.org/devblog/post/2008/05/Why-is-it-so-Fing-Difficult-to-Buy-Visual-Studio!.aspx"&gt;Why is it so F#...ing Difficult to Buy Visual Studio!?&lt;/a&gt;&lt;/li&gt; &lt;li&gt;Part 2: &lt;a href="http://devblog.ailon.org/devblog/post/2008/06/Visual-Studio-Trial-Upgrade-24-days-later.aspx"&gt;Visual Studio Trial Upgrade: 24 days later&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx&amp;amp;title=VS2008 Purchasing Part 3: Great Success... not really" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx&amp;amp;title=VS2008 Purchasing Part 3: Great Success... not really" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx&amp;amp;title=VS2008 Purchasing Part 3: Great Success... not really" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/3--0Vu5ulrk" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/3--0Vu5ulrk/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=f12ada3b-bf93-4ac7-97ac-dd353c94c81c</guid>
      <pubDate>Tue, 29 Jul 2008 10:47:03 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=f12ada3b-bf93-4ac7-97ac-dd353c94c81c</pingback:target>
      <slash:comments>8</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=f12ada3b-bf93-4ac7-97ac-dd353c94c81c</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/07/VS2008-Purchasing-Part-3-Great-Success-not-really.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=f12ada3b-bf93-4ac7-97ac-dd353c94c81c</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=f12ada3b-bf93-4ac7-97ac-dd353c94c81c</feedburner:origLink></item>
    <item>
      <title>When to show your work to the client?</title>
      <description>&lt;p&gt;When is the best time to show the work you are doing to your customer? In an ideal world with ideal clients the answer would be simple - as early as possible. Clients could provide valuable feedback before you went to far in the wrong direction.&lt;/p&gt; &lt;p&gt;Unfortunately in real life I find this approach to be counterproductive. Most (if not all) of the times as soon as I show early prototype to the client a process we internally call "moving pixels" begins. Color and/or size of some text on some unimportant page is wrong, that empty shopping cart text is not clear enough, these 2 buttons should be reordered, etc. Right after the first demo actual feature development stops and polishing of cosmetic stuff begins.&lt;/p&gt; &lt;p&gt;On the other hand in cases when you hold off demonstration as long as possible clients become impatient, they could suffer a heart attack when they finally see something and it's not 100% what they've expected, then you could suffer a heart attack when you hear that your product sucks, you suck and everyone you know and care about suck.&lt;/p&gt; &lt;p&gt;Does anyone have a universal recipe on how to balance this process? I've settled on dealing with "pixel moving" but I don't like it to the point I want to give up all contract work altogether.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx&amp;amp;title=When to show your work to the client?" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx&amp;amp;title=When to show your work to the client?" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx&amp;amp;title=When to show your work to the client?" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/bJqS8iRWpO0" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/bJqS8iRWpO0/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=611c3d28-37fd-488b-969d-1ea857fb53c6</guid>
      <pubDate>Mon, 14 Jul 2008 15:24:04 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=611c3d28-37fd-488b-969d-1ea857fb53c6</pingback:target>
      <slash:comments>9</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=611c3d28-37fd-488b-969d-1ea857fb53c6</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/07/When-to-show-your-work-to-the-client.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=611c3d28-37fd-488b-969d-1ea857fb53c6</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=611c3d28-37fd-488b-969d-1ea857fb53c6</feedburner:origLink></item>
    <item>
      <title>Automatic Defaults</title>
      <description>&lt;p&gt;&lt;img style="margin: 0px 0px 5px 5px" height="173" alt="ryanair-hertz" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/AutomaticDefaults_FA47/ryanair-hertz_3.gif" width="193" align="right" border="0"&gt; Every time I go to &lt;a href="http://www.ryanair.com/site/EN/?form=hertz"&gt;car rental sub-site of Ryanair.com&lt;/a&gt; I get frustrated with smarty-pants "Pick up Country" dropdown. As you can see on the screenshot, it automatically selects pickup country by visitor's IP address (or something like that).&lt;/p&gt; &lt;p&gt;Now I don't know how many people fly from UK to UK or from Germany to Germany, but I know for sure that you just can't fly with Ryanair from Lithuania to Lithuania. So this automatic selection super-feature is at the very least useless and in reality it's annoying. As I said you can't fly from Lithuania to Lithuania with Ryanair and what are the chances that when you're already in Lithuania you will go to Ryanair.com to rent a car? I think something like 1:10000. On the other hand automatic selection in "Country of Residence" is actually a nice little feature which probably works correctly 99% of the time.&lt;/p&gt; &lt;p&gt;So what should be in that pickup country dropdown by default? &lt;/p&gt; &lt;p&gt;The most obvious option is the message "Choose one" like in that "Pick up Location" box. And by the way there's only one Ryanair "location" in Lithuania so why the hell it's not selected by default? While just leaving "Choose one" seems most logical to me and easiest to "implement", I accept that it might be not fancy enough for someone at Ryanair. In this case they could've determined my location and then get the most popular destination from that location and make it the default.&lt;/p&gt; &lt;p&gt;Are there any other logical default values for that dropdown? I don't know. What I know is that seeing my own country there annoys me. In most cases no AI is better than seriously flawed AI.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx&amp;amp;title=Automatic Defaults" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx&amp;amp;title=Automatic Defaults" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx&amp;amp;title=Automatic Defaults" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/hywt5nG755U" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/hywt5nG755U/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=48ddafc4-ca77-4291-8ac9-25ba9cf81be1</guid>
      <pubDate>Fri, 27 Jun 2008 18:06:20 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=48ddafc4-ca77-4291-8ac9-25ba9cf81be1</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=48ddafc4-ca77-4291-8ac9-25ba9cf81be1</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Automatic-Defaults.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=48ddafc4-ca77-4291-8ac9-25ba9cf81be1</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=48ddafc4-ca77-4291-8ac9-25ba9cf81be1</feedburner:origLink></item>
    <item>
      <title>Klok - Personal Time Tracking Made Easy</title>
      <description>&lt;p&gt;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/KlokPersonalTimeTrackingMadeEasy_C73C/klok_main_2.jpg"&gt;&lt;img height="319" alt="klok_main" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/KlokPersonalTimeTrackingMadeEasy_C73C/klok_main_thumb.jpg" width="500" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;When I saw a post about &lt;a href="http://klok.mcgraphix.com/klok/index.htm"&gt;Klok&lt;/a&gt; on &lt;a href="http://www.downloadsquad.com/2008/06/20/klok-time-tracking-made-simple/"&gt;DownloadSquad&lt;/a&gt; I immediately thought that the idea is brilliant. Now that I've used Klok for 2 days I can say that implementation is a little rough around the edges but definitely useable and the idea is really brilliant and not only on paper but in real life too.&lt;/p&gt; &lt;p&gt;So, what is Klok? In it's creator's Rob McKeown's words:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Klok is a tool intended to be used by individuals, like myself, who have a need to track the time they spend on projects, tasks or anything else for that matter.&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;There are many project/progress tracking solutions out there but for tasks when you work alone or you are not a project manager needing to track activity of multiple developers using something complex is an overkill. When I needed to track time spent on some project most of the time I've resorted to post-it's or spreadsheets and system clock but with Klok I can save trees and my own time. And, by the way, it can export your timesheet to Excel, too.&lt;/p&gt; &lt;p&gt;Basically you just have a small bar on your screen&lt;/p&gt; &lt;p&gt;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/KlokPersonalTimeTrackingMadeEasy_C73C/klok_bar_2.jpg"&gt;&lt;img height="50" alt="klok_bar" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/KlokPersonalTimeTrackingMadeEasy_C73C/klok_bar_thumb.jpg" width="400" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;and select a project you are currently working on. And the stopwatch starts. When you are done with the project you switch to other project or just hit "stop". Projects can have sub-projects and sub-projects can have sub-sub-projects and so on. Then you can view your week in calendar-like fashion. Or look at your data on project basis. Or generate reports. Or export data to Excel.&lt;/p&gt; &lt;p&gt;Not everything is pink in Klok: I wish it was just a tray icon or Vista SideBar Gadget rather than bar shown above, I wish there were some configuration options (a week doesn't start on Sunday over here), the UI isn't perfectly smooth and for reasons unknown not all projects are shown in project dropdown all the time. But all these are minor issues which I believe will be addressed over time because overall this is a really nice add-on to my toolset.&lt;/p&gt; &lt;p&gt;You can find Klok at &lt;a href="http://klok.mcgraphix.com/"&gt;http://klok.mcgraphix.com/&lt;/a&gt;&lt;/p&gt; &lt;p&gt;P.S.: I was somewhat skeptical about all this &lt;a href="http://www.adobe.com/products/air/"&gt;Adobe AIR&lt;/a&gt; thing but now I'm already using 3 AIR apps on a regular basis: &lt;a href="http://www.twhirl.org/"&gt;twhirl&lt;/a&gt; (which is probably one of the most beautiful and polished little apps I've seen), &lt;a href="http://www.pandora.com/desktop"&gt;Pandora&lt;/a&gt; (well, it's actually a website shell but still) and now &lt;a href="http://klok.mcgraphix.com/"&gt;Klok&lt;/a&gt;.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx&amp;amp;title=Klok - Personal Time Tracking Made Easy" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx&amp;amp;title=Klok - Personal Time Tracking Made Easy" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx&amp;amp;title=Klok - Personal Time Tracking Made Easy" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/ZyAqnIK6KpU" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/ZyAqnIK6KpU/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=6ef3b5fe-f5e6-4a0b-aec7-2d93a25dc5fb</guid>
      <pubDate>Tue, 24 Jun 2008 14:43:50 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=6ef3b5fe-f5e6-4a0b-aec7-2d93a25dc5fb</pingback:target>
      <slash:comments>10</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=6ef3b5fe-f5e6-4a0b-aec7-2d93a25dc5fb</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Klok---Personal-Time-Tracking-Made-Easy.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=6ef3b5fe-f5e6-4a0b-aec7-2d93a25dc5fb</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=6ef3b5fe-f5e6-4a0b-aec7-2d93a25dc5fb</feedburner:origLink></item>
    <item>
      <title>He DIDN'T say THAT</title>
      <description>&lt;p&gt;Apparently the most popular Bill Gates quote is "fake":&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Some of the most oft-repeated comments attributed to Bill Gates through the years were not uttered by Bill Gates. Take for instance "&lt;strong&gt;640K ought to be enough for anybody&lt;/strong&gt;," which he supposedly said in 1981 to note that the 640K bytes of memory in IBM's PC was a significant breakthrough.&lt;/p&gt; &lt;p&gt;... Gates has addressed the 640K quote in interviews. "&lt;strong&gt;I've said some stupid things and some wrong things, but not that&lt;/strong&gt;. No one involved in computers would ever say that a certain amount of memory is enough for all time ... I keep bumping into that silly quotation attributed to me that says 640K of memory is enough. There's never a citation; the quotation just floats like a rumor, repeated again and again," he told Bloomberg Business Applications in 1996.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.cio.com/article/print/405313"&gt;The Quotable Bill Gates&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;Dang. The world will never be the same.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx&amp;amp;title=He DIDN'T say THAT" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx&amp;amp;title=He DIDN'T say THAT" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx&amp;amp;title=He DIDN'T say THAT" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/NcBkyziOrD4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/NcBkyziOrD4/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=ab08f68e-1715-48bb-b0b1-e270e84f1b84</guid>
      <pubDate>Tue, 24 Jun 2008 13:59:10 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=ab08f68e-1715-48bb-b0b1-e270e84f1b84</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=ab08f68e-1715-48bb-b0b1-e270e84f1b84</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/He-DIDNT-say-THAT.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=ab08f68e-1715-48bb-b0b1-e270e84f1b84</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=ab08f68e-1715-48bb-b0b1-e270e84f1b84</feedburner:origLink></item>
    <item>
      <title>Essential Silverlight 2 (Up-to-Date) by Christian Wenz</title>
      <description>&lt;p&gt;&lt;a href="http://www.amazon.com/gp/product/0596519982?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0596519982"&gt;&lt;img style="margin: 0px 0px 5px 5px" height="160" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/EssentialSilverlight2UptoDatebyChristian_DA17/essential_silverlight_2_3.jpg" width="123" align="right" border="0"&gt;&lt;/a&gt;&lt;img style="margin: 0px; border-top-style: none! important; border-right-style: none! important; border-left-style: none! important; border-bottom-style: none! important" height="1" alt="" src="http://www.assoc-amazon.com/e/ir?t=ailosdeveblog-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=0596519982" width="1" border="0"&gt;Finished reading &lt;a href="http://www.amazon.com/gp/product/0596519982?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=0596519982"&gt;Essential Silverlight 2 (Up-to-Date) by Christian Wenz&lt;/a&gt;. I've &lt;a href="http://devblog.ailon.org/devblog/post/2008/05/Book-Preview-Essential-Silverlight-2-(Up-to-Date).aspx"&gt;posted&lt;/a&gt; about the look and feel of the "Up-to-Date" concept when I got the book. To that aspect I can only add that it was actually more comfortable to read than I've anticipated. The binder doesn't stand in the way and probably is sturdier than paperback or even hardcover.&lt;/p&gt; &lt;p&gt;Now let's move on to the reason why I bought this book - content. The book succeeds at getting you excited about the technology and that's basically it. It shows you how to do basic XAML and how to access the objects from C# and JavaScript very briefly (&lt;a href="http://devblog.ailon.org/devblog/post/2008/05/Book-Preview-Essential-Silverlight-2-(Up-to-Date).aspx"&gt;currently&lt;/a&gt; it's only about 200 pages long). I really missed a part dealing with creation of objects and drawing directly from C#. I don't think that's something outside of the scope of "essential" book. It also seems that some chapters are being rewritten from JavaScript to C# but the text still says "JavaScript" while the code in the example is in C#.&lt;/p&gt; &lt;p&gt;I was mostly interested in Part 3: Programming Silverlight with .NET. But to my surprise it dealt with embedding Silverlight into ASP.NET pages rather than actual programming of Silverlight apps.&lt;/p&gt; &lt;p&gt;Anyway I got my share of excitement about the technology and feel pretty comfortable to start actually doing some stuff with it after reading this book.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Verdict: succeeds at getting reader excited about Silverlight 2 and stops right there&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;P.S.: This review refers to the book with "Update 1" (Beta 1) applied.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx&amp;amp;title=Essential Silverlight 2 (Up-to-Date) by Christian Wenz" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx&amp;amp;title=Essential Silverlight 2 (Up-to-Date) by Christian Wenz" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx&amp;amp;title=Essential Silverlight 2 (Up-to-Date) by Christian Wenz" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/AZIVXeNIORc" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/AZIVXeNIORc/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=19b54252-99c7-4988-a269-f3ab671ba9cd</guid>
      <pubDate>Wed, 18 Jun 2008 16:04:03 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=19b54252-99c7-4988-a269-f3ab671ba9cd</pingback:target>
      <slash:comments>3</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=19b54252-99c7-4988-a269-f3ab671ba9cd</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Essential-Silverlight-2-(Up-to-Date)-by-Christian-Wenz.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=19b54252-99c7-4988-a269-f3ab671ba9cd</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=19b54252-99c7-4988-a269-f3ab671ba9cd</feedburner:origLink></item>
    <item>
      <title>Accelerated C# 2008 by Trey Nash</title>
      <description>&lt;p&gt;&lt;a href="http://www.amazon.com/gp/product/1590598733?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=1590598733"&gt;&lt;img style="margin: 0px 0px 5px 5px" height="160" alt="accelerated_csharp_2008" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/BookReviewAcceleratedC2008byTreyNash_DA3D/accelerated_csharp_2008_thumb.jpg" width="121" align="right" border="0"&gt;&lt;/a&gt;I've been developing in C# (on and off) since version 1.0 was in beta. I've read a book about it when version 1 came out and then I relied on online articles, blogs and docs to stay updated. Now (2 versions later) I decided that it's about time to read something systematic on the language to get a complete overview of the things I could've missed over the years and to familiarize myself with new features in C# 3.0 (btw, book title is probably a work of some crazy marketing mind since there's no such thing as C# 2008 AFAIK) .&lt;/p&gt; &lt;p&gt;And the book delivers just what I needed: concise overview of most of the language features complete with samples, usage patterns and best practices. &lt;a href="http://www.amazon.com/gp/product/1590598733?ie=UTF8&amp;amp;tag=ailosdeveblog-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=9325&amp;amp;creativeASIN=1590598733"&gt;Accelerated C# 2008 (Accelerated)&lt;/a&gt;&lt;img style="margin: 0px; border-top-style: none! important; border-right-style: none! important; border-left-style: none! important; border-bottom-style: none! important" height="1" alt="" src="http://www.assoc-amazon.com/e/ir?t=ailosdeveblog-20&amp;amp;l=as2&amp;amp;o=1&amp;amp;a=1590598733" width="1" border="0"&gt; is targeted at developers with some prior experience. It's stated in several places that it's for C++, Java and Visual Basic developers though it's perfectly clear that &lt;a href="http://www.treynash.net/"&gt;Trey Nash&lt;/a&gt; has lots of things to say to C/C++ and C# guys and not so much to the Java and Visual Basic crowd. Almost all comparisons are done with C++ world so if you are Java/VB developer I suggest you look elsewhere or at least be warned that you wont find many references to these languages.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Verdict: highly recommended for C++ and C# developers, not so much for beginners and Java and VB developers&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;P.S.: actually in this case I've read a Russian translation of this book titled "&lt;a href="http://www.books.ru/shop/books/556117"&gt;C# 2008 ускоренный курс для профессионалов&lt;/a&gt;" so I can't talk about publishing related qualities of the book.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx&amp;amp;title=Accelerated C# 2008 by Trey Nash" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx&amp;amp;title=Accelerated C# 2008 by Trey Nash" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx&amp;amp;title=Accelerated C# 2008 by Trey Nash" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/x-ObF2yTjhI" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/x-ObF2yTjhI/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=5a541a51-6e18-4153-8f03-4f5f31cdbd0a</guid>
      <pubDate>Fri, 13 Jun 2008 15:56:01 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=5a541a51-6e18-4153-8f03-4f5f31cdbd0a</pingback:target>
      <slash:comments>3</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=5a541a51-6e18-4153-8f03-4f5f31cdbd0a</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Accelerated-C-2008-by-Trey-Nash.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=5a541a51-6e18-4153-8f03-4f5f31cdbd0a</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=5a541a51-6e18-4153-8f03-4f5f31cdbd0a</feedburner:origLink></item>
    <item>
      <title>Live Globalization</title>
      <description>&lt;p&gt; Microsoft has nice tools to implement "global" web sites. Unfortunately they overuse the technique most of the time.&lt;/p&gt; &lt;p&gt;I was looking for an alternative to SkypeOut calls to call my daughter cheaper while she's on vacation in Germany and I've read several nice opinions about pc-to-phone calls in &lt;a href="http://get.live.com/messenger/overview"&gt;Live Messenger&lt;/a&gt;. So I went and installed it. But I couldn't find the option to call a phone from it. I started looking around wondering WTF and then I checked this page called "&lt;a href="http://get.live.com/messenger/threewaystocall"&gt;Call&lt;/a&gt;"&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/LiveGlobalization_F0F9/messenger_3ways_2.gif"&gt;&lt;img height="325" alt="messenger_3ways" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/LiveGlobalization_F0F9/messenger_3ways_thumb.gif" width="500" border="0"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Do you notice anything wrong with this picture? The URL is "&lt;strong&gt;three&lt;/strong&gt;waystocall", it says "Get big savings on &lt;strong&gt;phone calls&lt;/strong&gt; around the world" and then there are &lt;strong&gt;TWO&lt;/strong&gt; options: video calls and pc-to-pc calls. And where are the PC-to-Phone calls?&lt;/p&gt; &lt;p&gt;If you dig through the help you can find a small sentence on the "&lt;a href="http://help.live.com/help.aspx?mkt=en-US&amp;amp;project=wl_messengerv1_2&amp;amp;Plcid=0409&amp;amp;CLCID=0427&amp;amp;Country=LT&amp;amp;BrandID=msmsgs&amp;amp;INI=WL_Messengerv1_2.ini&amp;amp;Other=SearchTerm%3dnogol%26H_APP%3dWindows%2520Live%2520Messenger%26S_Text%3dFor%2520help%2520on%2520Windows%2520Live%2520Messenger%252C%2520select%2520a%2520topic%253A%26ContactUs%3d%26v4%3dDH_FREE&amp;amp;Version=8.5"&gt;Call a contact's phone or computer with Windows Live Call&lt;/a&gt;" page that says "This feature is not available in some markets."&lt;/p&gt; &lt;p&gt;I assume that I'm part of that "some market" but wouldn't it be clearer and less awkward if they've just placed an asterisk on the "threewaystocall" page saying that "PC-to-Phone calls is not available in some markets/your market" rather than just hiding it? I know it looks cool on paper that you can report to someone that you can automatically detect user's "market" and display content accordingly and it's a nice "demo" feature but sometimes old-school remarks work better.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx&amp;amp;title=Live Globalization" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx&amp;amp;title=Live Globalization" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx&amp;amp;title=Live Globalization" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/pU6ugRX6Qj8" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/pU6ugRX6Qj8/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=f232719d-900b-457f-b8bb-ee7e8486dbc5</guid>
      <pubDate>Thu, 12 Jun 2008 17:26:00 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=f232719d-900b-457f-b8bb-ee7e8486dbc5</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=f232719d-900b-457f-b8bb-ee7e8486dbc5</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Live-Globalization.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=f232719d-900b-457f-b8bb-ee7e8486dbc5</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=f232719d-900b-457f-b8bb-ee7e8486dbc5</feedburner:origLink></item>
    <item>
      <title>Globalization Perfectly Implemented</title>
      <description>&lt;p&gt;For the last couple of months every time I clicked a link to some band's MySpace page I was presented with site's GUI in Spanish. I thought that there was something wrong with my browser settings or something and since I don't use MySpace for anything more than described above I wasn't paying much attention.&lt;/p&gt; &lt;p&gt;Then one of my co-workers told me about the same issue and another one confirmed from different location. Apparently for MySpace's AI all non-US IP addresses belong to Mexicans. And there's no easy way to switch language. There's a tiny "&lt;a href="http://www.myspace.com/index.cfm?fuseaction=InternationalMap"&gt;MySpace International&lt;/a&gt;" link at the bottom (after gazillion of ugly banners, friends, etc.) where you can switch from United States (Latino) to United States (English).&lt;/p&gt; &lt;p&gt;Way to go. MySpace is officially not only the ugliest but stupidest social network out there.&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx&amp;amp;title=Globalization Perfectly Implemented" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx&amp;amp;title=Globalization Perfectly Implemented" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx&amp;amp;title=Globalization Perfectly Implemented" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/s3CAXZziJr4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/s3CAXZziJr4/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=8697176b-a14b-4db6-ae90-c53a82558650</guid>
      <pubDate>Fri, 06 Jun 2008 12:00:58 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=8697176b-a14b-4db6-ae90-c53a82558650</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=8697176b-a14b-4db6-ae90-c53a82558650</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Globalization-Perfectly-Implemented.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=8697176b-a14b-4db6-ae90-c53a82558650</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=8697176b-a14b-4db6-ae90-c53a82558650</feedburner:origLink></item>
    <item>
      <title>Web Development Project Roles</title>
      <description>&lt;p&gt;I've just read a 37signals article "&lt;a href="http://www.37signals.com/svn/posts/1061-why-we-skip-photoshop"&gt;Why we skip Photoshop&lt;/a&gt;". It argues for the idea of designing sites in HTML/CSS right away skipping the "static mockup" phase. This reminded me of a thought I get every time I see some products, articles, demonstrations, etc. aiming at separating presentation from business logic.&lt;/p&gt; &lt;p&gt;In a typical small size web development projects there are 3 main roles of (implementation) participants:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Designer&lt;/li&gt; &lt;li&gt;HTML/CSS coder&lt;/li&gt; &lt;li&gt;Business logic coder&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Now the 37signals article assumes that "Designer" and "HTML/CSS coder" are either one and the same person or at least inseparable pair. In my world (In small-to-medium web projects that I worked on during the last 10 years) I've seen projects where:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;each role was performed by different person (or a group)&lt;/li&gt; &lt;li&gt;"HTML/CSS coder" and "Business logic coder" were the same person (or group)&lt;/li&gt; &lt;li&gt;all 3 roles were performed by a single person&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;But I have never worked on a project where "Designer" and "HTML/CSS coder" were combined into one role and business logic coder was someone else. &lt;/p&gt; &lt;p&gt;Am I living in a different world? Probably. Cause you can see this tendency in tools too. In Microsoft's demos you can often see a pattern where developer works in one tool - "Visual Studio", and graphic design/HTML/CSS/XAML is done in another (&lt;strong&gt;single&lt;/strong&gt;) suite - "&lt;a href="http://www.microsoft.com/expression/"&gt;Expression Studio&lt;/a&gt;". From my perspective this leaves only 2 major roles - presentation specialist and business logic developer. I think this is wrong. I've seen many good graphic designers who had basic knowledge how web works but had no idea about HTML or at least didn't waste their time learning quirks in CSS implementation in different browsers.&lt;/p&gt; &lt;p&gt;Probably for large corporations this is not an issue but if you take a small company with 3 technical employees (designer, html coder and developer) you can't get separate graphics tools for designer and HTML coder. You end up buying 2 copies of Photoshop or Fireworks or Expression Studio or whatever when designer only needs creative tools and HTML coder needs technical tools for cutting parts of the design according to his implementation. &lt;/p&gt; &lt;p&gt;Why do I have to get a Photoshop behemoth only to be able to cut (without compromises) what my designer has done in it? I want ImageReady separated back into a standalone product. But there's probably something wrong with me cause this seems to be a global trend.&lt;/p&gt; &lt;p&gt;Am I old fashioned or just crazy? What is your process?&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx&amp;amp;title=Web Development Project Roles" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx&amp;amp;title=Web Development Project Roles" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx&amp;amp;title=Web Development Project Roles" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/E6sk3BGu9xU" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/E6sk3BGu9xU/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=fe918507-409e-4f47-bb53-52826ff99613</guid>
      <pubDate>Thu, 05 Jun 2008 11:19:50 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=fe918507-409e-4f47-bb53-52826ff99613</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=fe918507-409e-4f47-bb53-52826ff99613</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/Web-Development-Project-Roles.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=fe918507-409e-4f47-bb53-52826ff99613</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=fe918507-409e-4f47-bb53-52826ff99613</feedburner:origLink></item>
    <item>
      <title>What user groups are for?</title>
      <description>&lt;p&gt;&lt;a href="http://dotnetgroup.lt/"&gt;&lt;img style="margin: 0px 0px 5px 5px" height="190" alt="lt_dotnet_usergroup" src="http://devblog.ailon.org/devblog/image.axd?picture=WindowsLiveWriter/Whatusergroupsarefor_D845/lt_dotnet_usergroup_3.jpg" width="250" align="right" border="0"&gt;&lt;/a&gt; For the past half a year I've been watching (from a distance) the creation of &lt;a href="http://dotnetgroup.lt/"&gt;Lithuanian .NET User Group&lt;/a&gt; in it's initiator's - &lt;a href="http://sergejus.blogas.lt/.NET%2BUser%2BGroup/"&gt;Sergejus Barinovas's - blog&lt;/a&gt; (both sites in Lithuanian). I couldn't get the purpose of this "movement" from what I've read. Then I've read reports about the first 2 meetings and still I couldn't see any serious reason to attend (except free beer or was it free?).&lt;/p&gt; &lt;p&gt;Then last week I've listened to the &lt;a href="http://www.dotnetrocks.com"&gt;DotNetRocks&lt;/a&gt; podcast - &lt;a href="http://www.dotnetrocks.com/default.aspx?showNum=344"&gt;Show #344 Building Communities at Dallas TechFest&lt;/a&gt;. Half way through the show I felt the urge to go to the next LT .NET User Group meeting but then as the show continued I found myself back in the skeptical mood.&lt;/p&gt; &lt;p&gt;So I decided to outline here what uses I can see for the "user group" concept and try to see if any of them appeal to me:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;&lt;strong&gt;Socialize with geeks.&lt;/strong&gt; This could be hit or miss. I like or dislike people individually. I can't relate to a person automatically just because he/she is of the same ethnicity, color, likes the same basketball team or programs using the same language.&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Find a new job.&lt;/strong&gt; I think these groups could be a powerful tool in finding a new job by meeting people working in other companies. Unfortunately (or rather fortunately) I'm not looking for a job and hopefully wont ever look for one.&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Find an employee.&lt;/strong&gt; This could work too. If I ever look for employees I'll think about going to a group meeting to check if there's someone there on a mission #2&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Establish yourself as a local authority in the subject.&lt;/strong&gt; For someone looking to achieve this goal user group could be a starting point but you have to actively participate rather than just "attend".&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Learn something new&lt;/strong&gt;. I don't think so. I mean you could learn something new there for sure but in the same amount of time you could learn a lot more by reading &lt;a href="http://devblog.ailon.org/devblog/opml.axd"&gt;technology blogs&lt;/a&gt;, articles and books. Unless group meeting is the only "excuse" you have to learn something.&lt;/li&gt; &lt;li&gt;&lt;strong&gt;Solve your technical problems.&lt;/strong&gt; These meetings are too far apart to be a useful medium for discussing issues with smart guys. You can solve your problems faster by asking questions in appropriate forums, newsgroups, blogs, etc.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;So, from my point of view there's not much to gain from this type of activity: I'm introverted (like most developers) and not seeking to meet random people for no apparent reason, I'm not looking for employers or employees, I'm not looking to become a technology speaker or something and I can learn much more by spending the time wiser.&lt;/p&gt; &lt;p&gt;I'm ready to accept that I'm wrong if someone has really good arguments in favor of user groups. For now the concept sounds as bullshitty to me as "team building" - something for some "social scientists" to justify their existence and, probably, some statistical analysis tool for vendors of technologies in question.&lt;/p&gt; &lt;p&gt;Do you go to your local "... user groups"? What for?&lt;/p&gt; &lt;p&gt;&lt;a target="_blank" href="http://www.dotnetkicks.com/kick/?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx&amp;amp;title=What user groups are for?"&gt;
                    &lt;img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx" border="0" alt="kick it on DotNetKicks.com" /&gt;
                  &lt;/a&gt;&lt;/p&gt;&lt;div class="socialBookmarksContainer"&gt;&lt;a rel="nofollow" href="http://digg.com/submit/?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx" target="_blank" title="Digg It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/digg_24.png" style="border: 0;" alt="Digg It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.dzone.com/links/add.html?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx&amp;amp;title=What user groups are for?" target="_blank" title="DZone It!"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/dzone_24.png" style="border: 0;" alt="DZone It!" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.stumbleupon.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx" target="_blank" title="StumbleUpon"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/stumbleupon_24.png" style="border: 0;" alt="StumbleUpon" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://technorati.com/ping?url=http://devblog.ailon.org/devblog/" target="_blank" title="Technorati"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/technorati_24.png" style="border: 0;" alt="Technorati" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://reddit.com/submit?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx&amp;amp;title=What user groups are for?" target="_blank" title="Reddit"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/reddit_24.png" style="border: 0;" alt="Reddit" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://del.icio.us/post?url=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx&amp;amp;title=What user groups are for?" target="_blank" title="Del.icio.us"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/delicious_24.png" style="border: 0;" alt="Del.icio.us" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://www.newsvine.com/_wine/save?u=http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx" target="_blank"title="NewsVine"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/newsvine_24.png" style="border: 0;" alt="NewsVine" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://furl.net" target="_blank" title="Furl"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/furl_24.png" style="border: 0;" alt="Furl" /&gt;&lt;/a&gt;&lt;a rel="nofollow" href="http://blinklist.com/submit/" target="_blank" title="BlinkList"&gt;&lt;img src="/devblog/themes/devailon/socialbookmarks/square/blinklist_24.png" style="border: 0;" alt="BlinkList" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/devblogailonorg/~4/6op8wTuOe_c" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/devblogailonorg/~3/6op8wTuOe_c/post.aspx</link>
      <author>ailon</author>
      <comments>http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx#comment</comments>
      <guid isPermaLink="false">http://devblog.ailon.org/devblog/post.aspx?id=4e00b88f-84f8-421b-99d8-3b34f4a3399c</guid>
      <pubDate>Wed, 04 Jun 2008 16:23:55 -0700</pubDate>
      <dc:publisher>ailon</dc:publisher>
      <pingback:server>http://devblog.ailon.org/devblog/pingback.axd</pingback:server>
      <pingback:target>http://devblog.ailon.org/devblog/post.aspx?id=4e00b88f-84f8-421b-99d8-3b34f4a3399c</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://devblog.ailon.org/devblog/trackback.axd?id=4e00b88f-84f8-421b-99d8-3b34f4a3399c</trackback:ping>
      <wfw:comment>http://devblog.ailon.org/devblog/post/2008/06/What-user-groups-are-for.aspx#comment</wfw:comment>
      <wfw:commentRss>http://devblog.ailon.org/devblog/syndication.axd?post=4e00b88f-84f8-421b-99d8-3b34f4a3399c</wfw:commentRss>
    <feedburner:origLink>http://devblog.ailon.org/devblog/post.aspx?id=4e00b88f-84f8-421b-99d8-3b34f4a3399c</feedburner:origLink></item>
  </channel>
</rss>
