<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Michael Flanakin's Weblog</title><link>http://michaelflanakin.com</link><description>Random thoughts for and about the software development community</description><ttl>60</ttl><geo:lat>38.806163</geo:lat><geo:long>-77.051398</geo:long><creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license><image><url>http://www.michaelflanakin.com/Portals/michaelflanakin.com/Images/MichaelFlanakin.jpg</url><title>Michael Flanakin</title></image><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1087/Lessons-Learned-from-the-Great-Zune-Massacre.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1087</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1087&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Lessons Learned from the Great Zune Massacre</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/504381567/Lessons-Learned-from-the-Great-Zune-Massacre.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Zune" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/zune.png" /&gt;&lt;/p&gt;
&lt;p&gt;I was thinking about the &lt;a href="http://zuneinsider.com/archive/2008/12/31/30gb-zune-issues-official-update.aspx"&gt;Dec 31, 2008 debacle Zune went thru&lt;/a&gt;, where the devices didn't work for a &lt;a href="http://www.engadget.com/2008/12/31/zune-30gb-brickification-acknowledged-microsoft-says-to-wait-it/"&gt;24 hr period&lt;/a&gt;. If you didn't hear about it, &lt;a href="http://www.aeroxp.org/2009/01/zune-30-bug-overinflated/"&gt;the problem was due to a device driver&lt;/a&gt;, which wasn't controlled by Microsoft. This is exactly the problem Microsoft has to deal with: crappy hardware vendors. I remember the sad, sad day I found out the Zune was built using Toshiba hardware. I have hoped so much that this would change, but it hasn't, yet... yet. I say that, not knowing of things to come, but hoping that Microsoft will realize the err in&amp;#160;its ways. &lt;a href="http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/888/Microsoft-Needs-to-Sell-Hardware.aspx"&gt;Microsoft should take tighter control over hardware&lt;/a&gt; by using quality hardware vendors. Hell, the Zune issue is nothing compared to the red ring of death issues the Xbox faces. I don't know anything about the Xbox hardware, tho, so I can't say much about that. Heck, Microsoft can't either, considering they haven't fixed the problem yet, as far as I know. I'd like to see Microsoft either form a division focused on delivering great hardware --&amp;#160;like phones, Zunes, Xboxes, desktops, and laptops -- or pony up and buy a company. There has been &lt;a href="http://search.live.com/results.aspx?q=zune+phone"&gt;a lot of speculation&lt;/a&gt; to that effect with the &lt;a href="http://www.microsoft.com/presspass/press/2008/feb08/02-11Acquisition.mspx?rss_fdn=Press%20Releases"&gt;purchase of Danger in early 2008&lt;/a&gt;, but Microsoft has claimed the "Zune Phone" won't happen. &lt;a href="http://search.live.com/results.aspx?q=zune+phone+ces+2009"&gt;That doesn't stop the rumors from piling up&lt;/a&gt;, tho. All I can say is that, if my vote was worth anything, I'd be voting for Lenovo. I've purchased 2 and am about to get another. I've even thought about replacing my desktop with a Lenovo. What's even better, tho, is the idea of having a &lt;a href="http://anythingtech.net/all-content/lenovos-android-phone-resemble-iphone/"&gt;Lenovo phone&lt;/a&gt;. As much as I like my &lt;a href="http://www.htc.com/www/product.aspx?id=49518"&gt;HTC Touch Pro (AT&amp;amp;T Fuze)&lt;/a&gt; -- minus the crap AT&amp;amp;T does to it, that is -- my love affair with Lenovo laptops really has me lusting after their new phone. If only it'd make it to the US... along with the &lt;a href="http://www.htc.com/www/product.aspx?id=64790"&gt;HTC Touch HD&lt;/a&gt;, which I still want. All this really boils down to one question, in my mind: Will Microsoft reconsider a higher level of control after dealing with one problem after another from hardware vendors? I kind of doubt it, but I'll keep&amp;#160;hope alive.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=oBicsz.P"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=oBicsz.P" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=vdeXjM.p"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=vdeXjM.p" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/504381567" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Tue, 06 Jan 2009 15:11:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1087</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1087/Lessons-Learned-from-the-Great-Zune-Massacre.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1086/Getting-the-Value-of-a-Dependency-Property.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1086</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1086&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Getting the Value of a Dependency Property</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/502057347/Getting-the-Value-of-a-Dependency-Property.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="WPF/Silverlight" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/xaml.png" /&gt;&lt;/p&gt;
&lt;p&gt;WPF and Silverlight have a daunting learning curve. There's no doubt about it. All we can do is take one bite at a time and, eventually, &lt;a href="http://search.live.com/results.aspx?q=%22how+do+you+eat+an+elephant%22"&gt;we'll finish the elephant&lt;/a&gt;. I've talked about&amp;#160;&lt;a href="http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1081/WPF-and-Silverlight-XAML-Tooling.aspx"&gt;my approach to today's&amp;#160;WPF/Silverlight&amp;#160;tooling&lt;/a&gt; and &lt;a href="http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1082/Custom-Routed-Events-in-WPF.aspx"&gt;a good intro to routed events and commands&lt;/a&gt;, but there's so much more. I haven't talked about dependency properties, but that's probably the second concept you'll have to grasp (before events/commands) as you ramp up on the wide world of XAML. I'm going to skip over it, for now, because I've found something else worth noting: how the value of dependency properties are determined. Obviously, if you don't understand the concepts behind dependency properties, you'll need to &lt;a href="http://msdn.microsoft.com/en-us/magazine/cc794276.aspx"&gt;brush up&lt;/a&gt;, first.&lt;/p&gt;
&lt;p&gt;Traditionally, determining the value of a property is simple: you get it's value (referred to as "local value" in WPF/Silverlight). That's it. A call to &lt;span class="Code"&gt;person.FirstName&lt;/span&gt; would return the value stored in the private &lt;span class="Code"&gt;person._firstName&lt;/span&gt; field. If it hasn't been set, then the default value of that type would be used. Simple. If we need to inject any custom logic here, we typically start by doing so in the accessor. For instance, if we want to ensure the value cannot be empty, we add a check to the setter. Things can (and will) get more complex, tho. For instance, we might have a need to allow others to add in their own validation. This would traditionally be handled by an event handler with a &lt;span class="Code"&gt;&lt;span class="class"&gt;Person&lt;/span&gt;.FirstNameChanged&lt;/span&gt; event. For better or worse, this is all custom and has a lot of room for "creativity." WPF seeks to standardize this and adds a bit of a framework around dependency properties to do so. Determining the value of a dependency property is accomplished in a five-step process.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Get&lt;/li&gt;
    &lt;li&gt;Evaluate&lt;/li&gt;
    &lt;li&gt;Animate&lt;/li&gt;
    &lt;li&gt;Coerce&lt;/li&gt;
    &lt;li&gt;Validate&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For the most part, these are all pretty simple to understand. The first step is arguably the most complex, in my mind, because getting the base value isn't as simple as the aforementioned &lt;span class="Code"&gt;person.FirstName&lt;/span&gt; example.&lt;/p&gt;
&lt;h2&gt;1. Get the Base Value&lt;/h2&gt;
&lt;p&gt;Obviously, you need to know what value you're working with before you can proceed, but with features like templating and property inheritance, what the heck is the value!? In school, you had PEMDAS; in WPF you have... well, something a bit more detailed.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Local value&lt;/li&gt;
    &lt;li&gt;Style triggers&lt;/li&gt;
    &lt;li&gt;Template triggers&lt;/li&gt;
    &lt;li&gt;Style setters&lt;/li&gt;
    &lt;li&gt;Theme style triggers&lt;/li&gt;
    &lt;li&gt;Theme style setters&lt;/li&gt;
    &lt;li&gt;Property value inheritance&lt;/li&gt;
    &lt;li&gt;Default value&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I'm not going to dig into each of these. I simply want to mention a few important aspects to keep in mind. First, "local value" refers to any call to &lt;span class="Code"&gt;&lt;span class="class"&gt;DependencyObject&lt;/span&gt;.SetValue()&lt;/span&gt; (i.e. &lt;span class="Code"&gt;&lt;span class="xml"&gt;&lt;span class="attribute"&gt;Height&lt;/span&gt;="123"&lt;/span&gt;&lt;/span&gt; in XAML or code or &lt;span class="Code"&gt;&lt;span class="xml"&gt;&lt;span class="attribute"&gt;Canvas.Left&lt;/span&gt;="123"&lt;/span&gt;&lt;/span&gt; in XAML). The only other thing to concern yourself with, if you're a beginner to dependency properties, is the default value. Default values are not necessarily the same as that of the underlying type. For instance, &lt;span class="Code"&gt;&lt;span class="class"&gt;FrameworkElement&lt;/span&gt;.Height&lt;/span&gt; has a default value of "NaN" (not a number), despite the fact that it's type, &lt;span class="Code"&gt;&lt;span class="keyword"&gt;double&lt;/span&gt;&lt;/span&gt;, has a default of &lt;span class="Code"&gt;0&lt;/span&gt;. Default types for dependency properties are set when the dependency property is registered.&lt;/p&gt;
&lt;h2&gt;2. Evaluate&lt;/h2&gt;
&lt;p&gt;If the value from step one derives from &lt;span class="Code"&gt;System.Windows.&lt;span class="class"&gt;Expression&lt;/span&gt;&lt;/span&gt;, such as data bindings, WPF converts that to a real value. Pretty self-explanatory.&lt;/p&gt;
&lt;h2&gt;3. Animate&lt;/h2&gt;
&lt;p&gt;If the dependency property is currently being animated, the value we've retrieved/evaluated is pretty much ignored in favor of the value set by the animation.&lt;/p&gt;
&lt;h2&gt;4. Coerce&lt;/h2&gt;
&lt;p&gt;Next is the injection of&amp;#160;custom code via the &lt;span class="Code"&gt;&lt;span class="class"&gt;CoerceValueCallback&lt;/span&gt;&lt;/span&gt; delegate, if one is registered. Being custom code, you're really left to your imagination on what you can and should do here, but one common scenario is to ensure the value is within expected bounds.&lt;/p&gt;
&lt;h2&gt;5. Validate&lt;/h2&gt;
&lt;p&gt;Lastly, we inject one last bit of custom code via the &lt;span class="Code"&gt;&lt;span class="class"&gt;ValidateValueCallback&lt;/span&gt;&lt;/span&gt; delegate, if one is registered. Validation returns a simple true of false, so there's not much you can do if you made it this far with a bad value. If validation fails, an exception is thrown. For this reason, be sure you take advantage of both coercion and validation, if you have a specific domain you're working in.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=mo4vfU.P"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=mo4vfU.P" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=AMenir.p"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=AMenir.p" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/502057347" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Sat, 03 Jan 2009 21:28:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1086</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1086/Getting-the-Value-of-a-Dependency-Property.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1085/ReSharper-Nightly-Builds-The-45-Saga.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1085</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1085&amp;PortalID=2&amp;TabID=142</trackback:ping><title>ReSharper Nightly Builds: The 4.5 Saga</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/499583672/ReSharper-Nightly-Builds-The-45-Saga.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="ReSharper" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/resharper.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://resharper.blogspot.com/2008/07/whats-next-life-after-release.html"&gt;JetBrains started work on ReSharper 4.5 recently&lt;/a&gt;; but, more importantly, they just&amp;#160;made &lt;a href="http://www.jetbrains.net/confluence/display/ReSharper/ReSharper+4.5+Nightly+Builds"&gt;nightly builds available online&lt;/a&gt;. &lt;a href="http://michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1042/Resharper-Nightly-Builds-Game-On.aspx"&gt;I've said it before&lt;/a&gt; and I'll say it again:&amp;#160;this is the best Visual Studio add-in I've seen... and &lt;a href="http://www.joltawards.com/finalists.html#devenvirons"&gt;I'm not the only one who thinks so&lt;/a&gt;.&amp;#160;I'm a huge productivity geek and ReSharper helps feed my addiction to speed... as in quick. JetBrains won't give you drugs. Although, ReSharper may seem like it, when you work on a machine without it. Development without ReSharper is somewhat analogous to drug withdrawals... cold sweats, lots of twitching, and wondering if you'll be able to finish in time. Okay, maybe not, but I do dread life without it.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=rX58HK.O"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=rX58HK.O" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=PToh6X.o"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=PToh6X.o" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/499583672" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Wed, 31 Dec 2008 16:31:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1085</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1085/ReSharper-Nightly-Builds-The-45-Saga.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1084/MSDN-Subscription-January-2009.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1084</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1084&amp;PortalID=2&amp;TabID=142</trackback:ping><title>MSDN Subscription: January 2009</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/498617595/MSDN-Subscription-January-2009.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="MSDN" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/msdn.png" /&gt;&lt;/p&gt;
&lt;p&gt;The following consists of the &lt;strong&gt;English&lt;/strong&gt; DVD updates released under the &lt;strong&gt;MSDN Premium (Team Suite)&lt;/strong&gt; subscription level for &lt;strong&gt;January 2009&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Servers&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;Disc&amp;#160;4614 / Part X15-28400&lt;/em&gt;
    &lt;ul&gt;
        &lt;li&gt;Microsoft Customer Care Framework 2009 (English)&lt;/li&gt;
        &lt;li&gt;Microsoft Desktop Optimization Pack 2008 R2 (English, Portuguese-Brazil, Chinese-Simplified, Chinese-Traditional, French, German, Italian, Japanese, Korean, Russian, Spanish)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Applications&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;Disc&amp;#160;3099.02 / Part &lt;/em&gt;X15-28380
    &lt;ul&gt;
        &lt;li&gt;Hyper-V™ Server 2008 (Chinese-Hong Kong S.A.R., Chinese-Simplified, English, French, German, Italian, Japanese, Korean, Portuguese-Brazil, Russian, Spanish)&lt;/li&gt;
        &lt;li&gt;Microsoft Virtual PC 2007 (English, French, German, Italian, Japanese, Spanish)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information, see the &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/index/default.aspx"&gt;MSDN Subscriptions Index&lt;/a&gt;.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=l19PIr.O"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=l19PIr.O" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=s2KC6U.o"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=s2KC6U.o" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/498617595" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Tue, 30 Dec 2008 13:21:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1084</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1084/MSDN-Subscription-January-2009.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1083/2008-Year-of-the-Cloud.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1083</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1083&amp;PortalID=2&amp;TabID=142</trackback:ping><title>2008: Year of the Cloud</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/476076434/2008-Year-of-the-Cloud.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="2008: Year of the Cloud" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/2008.png" /&gt;&lt;/p&gt;
&lt;p&gt;Every year, there's one underlying theme that seems to be pushed in the technology arena more than anything.&amp;#160;This year, I feel like it's the year of the cloud. The last time I did this was five years ago, so I'll have to back-fill a few years, but here are the themes I've&amp;#160;noticed over the past 11 years.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;strong&gt;2008&lt;/strong&gt;: Year of the Cloud&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2007&lt;/strong&gt;: Year of User Experience&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2006&lt;/strong&gt;: Year of AJAX/Web 2.0&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2005&lt;/strong&gt;: Year of SaaS&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2004&lt;/strong&gt;: &lt;a href="http://geekswithblogs.net/flanakin/archive/2004/03/17/3066.aspx"&gt;Year of Offshore Outsourcing&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2003&lt;/strong&gt;: &lt;a href="http://geekswithblogs.net/flanakin/archive/2004/01/28/1597.aspx"&gt;Year of the Architect&lt;/a&gt;&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2002&lt;/strong&gt;: Year of Web Services&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2001&lt;/strong&gt;: Year of XML/.NET&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;2000&lt;/strong&gt;: Year of Enterprise Java&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;1999&lt;/strong&gt;: Year of Linux&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;1998&lt;/strong&gt;: Year of the Web&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We've been approaching "the year of the &lt;a href="http://en.wikipedia.org/wiki/Cloud_computing"&gt;cloud&lt;/a&gt;" for a while, now. You can actually look back to 1998, when the web started to really catch on. A few years later, as Java started to build momentum and then .NET hit the scenes, which is when XML as a standard communication language started to catch on. Also tied to the .NET release was a huge push for&amp;#160;web services.&amp;#160;As this was more and more successful,&amp;#160;&lt;a href="http://en.wikipedia.org/wiki/Service-oriented_architecture"&gt;service-oriented architecture (SOA)&lt;/a&gt; started to boom. In my mind, that was a big boon to the outsourcing trends, which have seemingly quieted down a bit, but not completely. SOA also led to the &lt;a href="http://en.wikipedia.org/wiki/Software_as_a_Service"&gt;software as a service (SaaS)&lt;/a&gt; trend, which triggered Microsoft's &lt;a href="http://en.wikipedia.org/wiki/Software_plus_services"&gt;software plus services (S+S)&lt;/a&gt; &lt;a href="http://www.microsoft.com/softwareplusservices"&gt;push&lt;/a&gt;, but that was more of a side story. With everything moving to the web, backed by [typically open] services, &lt;a href="http://en.wikipedia.org/wiki/AJAX"&gt;asynchronous Javascript and XML (AJAX)&lt;/a&gt; was the next big push. This was tied to the "&lt;a href="http://en.wikipedia.org/wiki/Web_2.0"&gt;Web 2.0&lt;/a&gt;" moniker, which I'd argue wasn't quite what &lt;a href="http://en.wikipedia.org/wiki/Tim_Berners_Lee"&gt;Tim Berners-Lee&lt;/a&gt; intended. Either way, this led to the big push for better &lt;a href="http://en.wikipedia.org/wiki/User_experience"&gt;user experiences&lt;/a&gt;, which &lt;a href="http://michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/828/User-Interface-vs-User-Experience.aspx"&gt;many people confuse with user interface design&lt;/a&gt;. The Web 2.0 push also kept the industry on its web focus, which is&amp;#160;where&amp;#160;we are left today.&lt;/p&gt;
&lt;p&gt;It's easy to look back and see how we got here. Trends show that architectural changes typically take two or three years to gain momentum in the community, so we'll probably have a couple of years before the next major architecture peaks. The trend towards distributed computing has grown more and more, but I have a feeling things are going to start coming back a little. We've been pushing out to the web&amp;#160;for a lot of reasons; one of which is the rise of the Mac. What we've been losing out on, however, is the power of the desktop. I see the S+S push to continue, but more as an underlying theme than a strong focus. Services will continue to be the foundation, maintaining the importance of cloud computing, but the desktop will be where the processing occurs. I see Silverlight proving a huge success, which will eventually bring .NET to the Mac. This will probably bring Novell and Microsoft a little closer together, with respect to Microsoft's relationship with Mono, but this may simply be a change in focus for Mono. Oh, and when I say, "bring .NET to the Mac," I'm not talking about the scaled-down version in Silverlight. I'm talking about the real deal. I see WPF and Silverlight merging along with the smart client architecture built into .NET today. This will take more than a few years, but it seems to be inevitable. Most likely, by the time all this happens, multi-core will be a way of life, as opposed to the we-should-be-thinking-about-threading thoughts most developers have today. Armed with a strong multi-threaded foundation, which is easy to use, the combined WPF/Silverlight presentation tier will quickly overtake Flash and Air. By this time, we should also start to see more integration into our everyday lives...&lt;/p&gt;
&lt;p&gt;Okay, I'm probably getting a little out of hand here. If I go much further, we're going to be on the USS Enterprise, so I'll stop while I'm ahead. I'll just leave it at, it'll be interesting to see what's next. My money's on the power of the desktop, which we've lost over the past 10 years.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=xuwJO"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=xuwJO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=0xhTo"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=0xhTo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/476076434" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Fri, 05 Dec 2008 21:23:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1083</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1083/2008-Year-of-the-Cloud.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1082/Custom-Routed-Events-in-WPF.aspx#Comments</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1082</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1082&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Custom Routed Events in WPF</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/474833863/Custom-Routed-Events-in-WPF.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="WPF/Silverlight (XAML)" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/xaml.png" /&gt;&amp;#160;Routed events are one of the foundational components of the WPF and Silverlight architecture. If you're not familiar with the concepts behind routed events, check out &lt;a href="http://www.softinsight.com/bnoyes"&gt;Brian Noyes&lt;/a&gt;'&amp;#160;&lt;a href="http://www.softinsight.com/bnoyes/SyndicationService.asmx/GetRss"&gt;&lt;img title="Syndicated feed" height="16" alt="Syndicated feed" width="16" border="0" src="http://michaelflanakin.com/portals/michaelflanakin.com/images/icons/feed_16x.gif" /&gt;&lt;/a&gt; MSDN Magazine article, &lt;a href="http://msdn.microsoft.com/en-us/magazine/cc785480.aspx"&gt;Understanding Routed Events and Commands in WPF&lt;/a&gt;. This is a great start to understanding the architecture, but Brian doesn't tackle creating your own routed events. After seemingly endless searches, I finally whipped out Reflector to get to the bottom of it. It's pretty simple, but it is different.&lt;/p&gt;
&lt;p&gt;For this scenario, I have a collection of items and I needed to raise an event when the selected item changes. Pretty basic. There are three components to this: &lt;strong&gt;(1)&lt;/strong&gt; the routed event identifier, &lt;strong&gt;(2)&lt;/strong&gt; accessor, and &lt;strong&gt;(3)&lt;/strong&gt; event raising call. Again, not too far off what we're used to, but it is slightly different.&lt;/p&gt;
&lt;p class="code"&gt;&lt;span class="keyword"&gt;public static readonly&lt;/span&gt; &lt;span class="class"&gt;RoutedEvent&lt;/span&gt; SelectedIndexChangedEvent = &lt;span class="class"&gt;EventManager&lt;/span&gt;.RegisterRoutedEvent("SelectedIndexChanged", &lt;span class="class"&gt;RoutingStrategy&lt;/span&gt;.Bubble, &lt;span class="keyword"&gt;typeof&lt;/span&gt;(&lt;span class="class"&gt;RoutedEventHandler&lt;/span&gt;), &lt;span class="keyword"&gt;typeof&lt;/span&gt;(&lt;span class="class"&gt;MyControl&lt;/span&gt;));&lt;br /&gt;
&lt;br /&gt;
&lt;span class="comment"&gt;/// &amp;lt;summary&amp;gt;&lt;br /&gt;
/// Occurs when the selected index changes.&lt;br /&gt;
/// &amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="keyword"&gt;public event&lt;/span&gt; &lt;span class="class"&gt;RoutedEventHandler&lt;/span&gt; SelectedIndexChanged&lt;br /&gt;
{&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; &lt;span class="keyword"&gt;add&lt;/span&gt; { AddHandler(SelectedIndexChangedEvent, &lt;span class="keyword"&gt;value&lt;/span&gt;); }&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; &lt;span class="keyword"&gt;remove&lt;/span&gt; { RemoveHandler(SelectedIndexChangedEvent, &lt;span class="keyword"&gt;value&lt;/span&gt;); }&lt;br /&gt;
}&lt;/p&gt;
&lt;p&gt;This is where I got stuck. I tried the traditional method to raise the event:&lt;/p&gt;
&lt;p class="code"&gt;&lt;span class="comment"&gt;/// &amp;lt;summary&amp;gt;&lt;br /&gt;
/// Raises the &amp;lt;see cref="SelectedIndexChanged"/&amp;gt; event.&lt;br /&gt;
/// &amp;lt;/summary&amp;gt;&lt;br /&gt;
/// &amp;lt;param name="args"&amp;gt;The &amp;lt;see cref="RoutedEventArgs"/&amp;gt; instance containing the event data.&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="keyword"&gt;protected virtual void&lt;/span&gt; OnSelectedIndexChanged(&lt;span class="class"&gt;RoutedEventArgs&lt;/span&gt; args)&lt;br /&gt;
{&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160; &lt;span class="keyword"&gt;if&lt;/span&gt; (SelectedIndexChanged != &lt;span class="keyword"&gt;null&lt;/span&gt;)&lt;br /&gt;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &amp;#160; SelectedIndexChanged(&lt;span class="keyword"&gt;this&lt;/span&gt;, args);&lt;br /&gt;
}&lt;/p&gt;
&lt;p&gt;Obviously, we wouldn't be here if this would have worked. Luckily, all we need to do is replace the &lt;span class="code"&gt;&lt;span class="keyword"&gt;if&lt;/span&gt;&lt;/span&gt; block: &lt;span class="Code"&gt;RaiseEvent(args)&lt;/span&gt;. I should also mention that, when you initialize the event arguments, you need to specify the routed event it's being triggered for. this is as simple as &lt;span class="code"&gt;&lt;span class="keyword"&gt;new&lt;/span&gt; &lt;span class="class"&gt;RoutedEventArgs&lt;/span&gt;(SelectedIndexChangedEvent)&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;There can (and probably should) be some deeper thinking with respect to the best way to make this call, but I'm not going to cover that here. I have some half-baked ideas about this as well as what hooking up a routed event &lt;em&gt;should&lt;/em&gt; look like, but I'll save that for another time.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=7TLZO"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=7TLZO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=sUIYo"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=sUIYo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/474833863" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Thu, 04 Dec 2008 16:38:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1082</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1082/Custom-Routed-Events-in-WPF.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1081/WPF-and-Silverlight-XAML-Tooling.aspx#Comments</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1081</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1081&amp;PortalID=2&amp;TabID=142</trackback:ping><title>WPF and Silverlight (XAML) Tooling</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/471435023/WPF-and-Silverlight-XAML-Tooling.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="WPF/Silverlight XAML" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/xaml.png" /&gt;&lt;/p&gt;
&lt;p&gt;If you haven't played with either WPF or Silverlight, you first need to understand the tooling we have available: Visual Studio, Blend, and Design. Most people don't consider Expression Design, but I'd argue that it's perhaps the best way to get started, depending on what you're doing. This is probably common sense, but if you haven't played with each of the tools, you may not realize how valuable each is to your end goal.&lt;/p&gt;
&lt;p&gt;Any developer will most likely want to start with Visual Studio. Try it. You'll find yourself wondering where to start. If you're an old school web developer, like me, you'll stare at the XML code and wonder what to type and finally fall back on the toolbox. If you're a drag-and-drop type (either Win or Web Forms), you'll probably go directly to the toolbox. In either case, you'll most likely find it useful to tweak both the designer and XML... well, that's not completely true. If you're comfortable with XML, you'll eventually stop using the designer because it's just too much of a pain to deal with in Visual Studio. &lt;strong&gt;Visual Studio is the&amp;#160;best environment [today] if you want to modify markup or code.&lt;/strong&gt; Don't choose Visual Studio if you're a drag-and-drop type of developer. No matter what type of developer you are, however, you'll find yourself wondering if there's a better way because it just doesn't "feel" right. This is when you'll begin to wonder about that "Blend" thing you heard about.&lt;/p&gt;
&lt;p&gt;If you're proficient in Flash development or claim the "designer" moniker, you'll probably start with Expression Blend. &lt;strong&gt;Blend is the best tool to build an interface along with some key interaction details (read: animations).&lt;/strong&gt;&amp;#160; The problem with blend is, there's absolutely no intellisense in XAML, which I find ridiculous. And, just to put salt in the wound, you can't even edit code (C# and VB) files with the tool. This really drives in the fact that the tool is intended for no-code applications. These don't exist. In my experience, Blend will become less and less useful over time. Why? Because you'll start to realize you can't do everything in XAML and will have to move some things to code. This, in conjunction to run-time bindings in XAML will render the Blend design-time experience useless. Visual Studio is the same in this aspect, but it just because apparent that you'll prefer the intellisense, since you'll want to work with the XAML. Unlike Visual Studio, tho, you'll find yourself tweaking the designer more than the XAML. Coding isn't the only thing that will take you out of Blend, tho.&lt;/p&gt;
&lt;p&gt;Let's face it, most people start looking at WPF and Silverlight because they want glam. They want beautiful applications&amp;#160;with all kinds of frou-frou animations and transitions. This drives me crazy, but I'm not surprised. &lt;strong&gt;Choose WPF and/or Silverlight &lt;em&gt;not &lt;/em&gt;because it &lt;em&gt;can&lt;/em&gt; be&amp;#160;pretty, but because it's the next generation user interface technology. &lt;/strong&gt;This means, if you're building a new Windows application, don't even look at Win Forms. WPF is &lt;em&gt;the&lt;/em&gt; way to go. Microsoft hasn't said it, but Win Forms is dead to me. If you have an existing app, I'd recommend you start looking into interop scenarios. Whether you're looking at WPF and/or Silverlight as the next gen platform or not, you're still going to want that glam I mentioned. This is when you should take a look at the often ignored, red-headed step-child of the Expression suite.&lt;/p&gt;
&lt;p&gt;Today, Expression Design is a vector graphics editor. Don't expect to switch to Design for raster images (i.e. GIF, JPG, PNG) --&amp;#160;which is what I was hoping to do --&amp;#160;you'll find yourself missing crucial capabilities. I keep Paint.NET on hand for these needs.&amp;#160;&lt;strong&gt;Design is best used to build creative visual interfaces.&lt;/strong&gt;&amp;#160;I've used it to theorize and bring certain design elements to life. You might do this with windows, buttons, and other framing elements, for instance. I simply find Design to be a better interface for adding glam to my user interface. Note that I'm not referring to animations. Use Blend for animation; use&amp;#160;Design for static visual elements, like rotation, embossing, and the like.&lt;/p&gt;
&lt;p&gt;To sum it all up, here's what&amp;#160;I believe a&amp;#160;WPF/Silverlight project should looked like.&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;&lt;strong&gt;Know the difference between graphic and interaction design.&lt;/strong&gt; Essentially this is the &lt;a href="michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/828/User-Interface-vs-User-Experience.aspx"&gt;user interface vs. user experience&lt;/a&gt; debate, it's important to &lt;a href="http://michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/960/UI-vs-UX-Revisited.aspx"&gt;know the difference&lt;/a&gt; for staffing purposes. There is a difference and it's substantial. Don't assume that a graphic designer can architect an ideal interaction or vice-versa.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Get a graphic designer. &lt;/strong&gt;Unless you have an eye for graphic design, you won't be getting the eye candy you're probably looking for. If you have a passion for this, but it isn't your calling (like me), you might be able to get there eventually, but your time is probably better spent elsewhere.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Get an interaction designer. &lt;/strong&gt;The fact that we have dialog after dialog and&amp;#160;click after click proves how important this one is. I'd argue this is more important than a graphic designer, but I might be biased. The good news is, this can be learned a lot easier than the artistic nature of graphic design. Don't think you can get there without dedication, tho. There are&amp;#160;some scientific guidelines, but I have yet to see a good roadmap. It's more about opening your mind and removing yourself and what you might do from the process.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Design is&amp;#160;the graphic designer's scratch pad. &lt;/strong&gt;Whether you start with wire-frames or set your sights on the real deal, Design is great for slapping something together that will eventually be useful. Tweak and tweak and tweak&amp;#160;until&amp;#160;you get something&amp;#160;that looks right. Then, export to XAML.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Blend brings your design to life. &lt;/strong&gt;Now that you have your XAML, you'll probably need to tweak it to make it slightly more human-readable and maintainable as well as do some initial bindings and animations. This is where three worlds collide. Graphic designers will feel awkward in Blend, but will still be able to be relatively production; interaction designers don't really have a tool, so it will depend on where they came from, but Blend is arguably the best place for them to get started; and, developers are typically more code-focused, so Blend will be awkward for them, too. The bottom line is, Blend isn't the perfect tool for anyone, but it does fill a need. Use it to add interactivity to your design.&lt;/li&gt;
    &lt;li&gt;&lt;strong&gt;Visual Studio gets the job done.&lt;/strong&gt; When you're ready to make your app do something real, open it in Visual Studio. Arguably the worlds best development environment -- although not without its flaws -- you know why you're here. 'Nuff said.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;As a developer who is very comfortable with markup, I've found that this has changed for me over time. I still believe it's a great workflow that supports some moderate back-and-forth -- at least, between Visual Studio and Blend -- but my habits have changed over time. As I've become more and more familiar with XAML, I tend to create visual and interactive effects in Design and Blend, respectively, and then just look at the XAML to figure out how it's done. Occasionally, I'll open my app in Blend, but not too often. This just depends on how big of an effect I'm trying to implement.&lt;/p&gt;
&lt;p&gt;The bottom line is, get some experience in all three of these tools. You'll find your own comfort zone. It may include the all-too-bloated and usability-hating Photoshop with a XAML exporter instead of Design or augmenting XAML editing&amp;#160;with a light-weight&amp;#160;tool like &lt;a href="http://blogs.msdn.com/llobo/archive/tags/XamlPadX/default.aspx"&gt;XamlPadX&lt;/a&gt; or &lt;a href="http://www.kaxaml.com"&gt;Kaxaml&lt;/a&gt;. No matter what you grow into, know there will be growing pains. WPF and Silverlight have a huge learning curve, but you're buying into the future. The curve is there for a reason, but will hopefully be lessened as the tools improve. I'm also hoping for some major improvements in .NET 4, but I'll try to touch on that later.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=nZftO"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=nZftO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=Uozbo"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=Uozbo" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/471435023" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Mon, 01 Dec 2008 15:51:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1081</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1081/WPF-and-Silverlight-XAML-Tooling.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1011/VS-Team-Edition-for-IT-Admins.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1011</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1011&amp;PortalID=2&amp;TabID=142</trackback:ping><title>VS Team Edition for IT Admins</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/465536439/VS-Team-Edition-for-IT-Admins.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="PowerShell" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/PowerShell.png" /&gt;&lt;/p&gt;
&lt;p&gt;Yes, I said "admins," but, unfortunately, this isn't an announcement. I'm simply thinking of a version of Visual Studio built for, well, admins. Specifically, I'm envisioning an environment to build and debug PowerShell scripts and cmdlets. Of course, this is only a hop, skip, and a jump away from PowerShell as an official .NET language. Imagine that, PoSh.NET... or, would someone force it to be P#? Either way, I like the idea. As an official language, that also opens it up to compiled scripts, which would be great for those servers without PowerShell installed. Of course, it's just a matter of time before PowerShell is default and the legacy DOS shell is eventually phased out. As a matter of fact, &lt;a href="http://blogs.msdn.com/powershell/archive/2008/10/28/powershell-will-be-installed-by-default-on-windows-server-08-r2-ws08r2-and-windows-7-w7.aspx"&gt;that's the plan for Windows 7 and Server 2008 R2&lt;/a&gt;. I'm not sure about Server Core, tho, since there's still the dependency on .NET.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=pa0ON"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=pa0ON" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=YGdJn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=YGdJn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/465536439" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Tue, 25 Nov 2008 22:43:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1011</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1011/VS-Team-Edition-for-IT-Admins.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1080/Default.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1080</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1080&amp;PortalID=2&amp;TabID=142</trackback:ping><title>PowerShell Tip: Creating GUIDs and Code Generation</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/465438637/Default.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="PowerShell" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/PowerShell.png" /&gt;&lt;/p&gt;
&lt;p&gt;I should start off by saying this isn't really about hard-core code generation. It's more about simplifying some of the more repetitive tasks we tend to do during development. In this instance, I needed to get 7 GUIDs to use in some test code. Sure, I could've use the&amp;#160;Create&amp;#160;GUID tool in Visual Studio, but what fun is that? Besides, I hate manual tasks and this tool would have forced me down a&amp;#160;~24 step process. No thanks. I'll stick to the 3 steps PowerShell can give me.&lt;/p&gt;
&lt;p&gt;First thing's first, how do we create a&amp;#160;GUID in PowerShell? I'm going to fall back to .NET for this one.&lt;/p&gt;
&lt;p class="code"&gt;[&lt;span class="class"&gt;Guid&lt;/span&gt;]::NewGuid()&lt;/p&gt;
&lt;p&gt;If you run this, you'll get a blank line. What's up with that!? Admittedly, I'm not 100% sure why this is happening, but I have a pretty good guess. GUIDs are surrounded by curly-braces ({}), which are interpreted by PowerShell to be a script block. Putting 2 and 2 together, I'm assuming PowerShell thinks this is a script to run. Easy fix.&lt;/p&gt;
&lt;p class="code"&gt;[&lt;span class="class"&gt;Guid&lt;/span&gt;]::NewGuid().ToString()&lt;/p&gt;
&lt;p&gt;That's it. The only other thing I had to do was add in my other formatting to create the GUID in code and slap that in a loop.&lt;/p&gt;
&lt;p class="code"&gt;&lt;span class="keyword"&gt;foreach&lt;/span&gt; ($i &lt;span class="keyword"&gt;in&lt;/span&gt; 1..7) { 'new Guid("{0}")' &lt;span class="parameter"&gt;-f&lt;/span&gt; [&lt;span class="class"&gt;Guid&lt;/span&gt;]::NewGuid() }&lt;/p&gt;
&lt;p&gt;You'll notice I opted to use the PowerShell shortcut syntax for string formatting. If you missed it, &lt;a href="http://michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1073/Converting-ToFrom-Hex-with-PowerShell.aspx"&gt;I talked about it as well as the static-method-calling syntax last week&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This tiny exercise reminded me of a pretty advanced&amp;#160;Excel spreadsheet I created years ago because I was sick of typing the same bit of code over and over again. Since then, &lt;a href="http://michaelflanakin.com/tools"&gt;other tools&lt;/a&gt;, like &lt;a href="http://www.roland-weigelt.de/ghostdoc"&gt;GhostDoc&lt;/a&gt; and &lt;a href="http://www.jetbrains.com/resharper"&gt;Resharper&lt;/a&gt;, have augmented my developer experience, enabling a much higher level of productivity than I had back then. Nonetheless, there is still room for improvement. This makes me wonder how much PowerShell could do for me with respect to code generation.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=WcIYN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=WcIYN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=Gad1n"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=Gad1n" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/465438637" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Tue, 25 Nov 2008 19:30:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1080</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1080/Default.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1079/New-Feed-for-MSDN-Downloads.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1079</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1079&amp;PortalID=2&amp;TabID=142</trackback:ping><title>New Feed for MSDN Downloads</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/464114771/New-Feed-for-MSDN-Downloads.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="MSDN" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/msdn.png" /&gt;&lt;/p&gt;
&lt;p&gt;In what must be a huge coincidence, the &lt;a href="http://blogs.msdn.com/msdnsubscriptions"&gt;MSDN subscriptions team&lt;/a&gt; &lt;a href="http://blogs.msdn.com/msdnsubscriptions/rss.xml"&gt;&lt;img title="Syndicated feed" height="16" alt="Syndicated feed" width="16" align="center" border="0" src="http://michaelflanakin.com/portals/michaelflanakin.com/images/icons/feed_16x.gif" /&gt;&lt;/a&gt; &lt;a href="http://blogs.msdn.com/msdnsubscriptions/archive/2008/11/21/new-subscriptions-rss-feeds.aspx"&gt;just informed us&lt;/a&gt; about an &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/subscription-downloads.rss"&gt;updated feed for MSDN downloads&lt;/a&gt;&amp;#160;&lt;a href="http://msdn.microsoft.com/en-us/subscriptions/subscription-downloads.rss"&gt;&lt;img title="Syndicated feed" height="16" alt="Syndicated feed" width="16" align="center" border="0" src="http://michaelflanakin.com/portals/michaelflanakin.com/images/icons/feed_16x.gif" /&gt;&lt;/a&gt;&amp;#160;(link is to en-US feed). While I'd like to think this was due to the &lt;a href="http://michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1061/MSDN-Subscription-Updates.aspx"&gt;my prodding&lt;/a&gt;, I think it's pretty safe to say it's not. Besides, this is just a revamped version of the old feed, which just covers the subscriber downloads. The team's post sounds like it's a very good thing. I'm not sure if anyone else followed the old feed, but the quality bar wasn't very high. I consistently noticed that new downloads weren't announced. This should fix that. Unfortunately, it won't change the fact that you'll get a multitude of announcements for products released in different formats (i.e. ISO, EXE, DVD). At least you can get it&amp;#160;for your desired language, tho.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=6HD5N"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=6HD5N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=PQNIn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=PQNIn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/464114771" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Mon, 24 Nov 2008 16:58:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1079</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1079/New-Feed-for-MSDN-Downloads.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1002/PowerShell-Tip-Scoping-Script-Execution.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1002</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1002&amp;PortalID=2&amp;TabID=142</trackback:ping><title>PowerShell Tip: Scoping Script Execution</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/464068713/PowerShell-Tip-Scoping-Script-Execution.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="PowerShell" src="http://michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/PowerShell.png" /&gt;&lt;/p&gt;
&lt;p&gt;PowerShell gives us three different ways to execute scripts.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;span class="code"&gt;&lt;span class="command"&gt;func&lt;/span&gt;()&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span class="code"&gt;&amp;amp;&lt;span class="command"&gt;func&lt;/span&gt;()&lt;/span&gt;&lt;/li&gt;
    &lt;li&gt;&lt;span class="code"&gt;. &lt;span class="command"&gt;func&lt;/span&gt;()&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I learned this one a while ago and have to say it was pretty annoying... at least before I knew what was happening. Most people expect the first type of execution, because it's used in any scripting or programming type of environment. The other two seemed odd to me, tho, and I would never have known about it if someone didn't tell me why I was having issues with a script. Oh, and there doesn't seem to be anything in the built-in help about it.&lt;/p&gt;
&lt;p&gt;The difference between these three is all about scope. Let's start with an example script.&lt;/p&gt;
&lt;p class="code"&gt;$x = "123";&lt;br /&gt;
function &lt;span class="command"&gt;setX&lt;/span&gt;($value) { $x = $value; "x = $x"; }&lt;br /&gt;
&lt;span class="command"&gt;setX&lt;/span&gt;("xyz");&lt;br /&gt;
$x;&lt;/p&gt;
&lt;p&gt;What do you think will happen? Will &lt;span class="Code"&gt;$x&lt;/span&gt; be "123" or "xyz"? The answer is "123". Why? Because, by default, script blocks are entirely self-contained.&lt;/p&gt;
&lt;p&gt;Now, let's use the "&amp;amp;" to see what happens -- remember that &lt;span class="Code"&gt;$x&lt;/span&gt;&amp;#160;is still&amp;#160;"123".&lt;/p&gt;
&lt;p class="code"&gt;&amp;amp;&lt;span class="command"&gt;setX&lt;/span&gt;("xyz");&lt;br /&gt;
$x;&lt;/p&gt;
&lt;p&gt;What now? Same thing. It's still "123". The main purpose of the "&amp;amp;" prefix is to allow you to execute something. This could be a function, like we did here, or it could be a file name. This allows you to build a string or get a file name and then&amp;#160;use&amp;#160;something like &lt;span class="Code"&gt;&amp;amp;$docxfile&lt;/span&gt;&amp;#160;to open the file in the default program.&lt;/p&gt;
&lt;p&gt;Finally, we have the "." prefix, which I'm sure you can guess what will happen. The only thing you have to remember is to put a space between the "." and function name.&amp;#160;Again, &lt;span class="Code"&gt;$x&lt;/span&gt;&amp;#160;is still&amp;#160;"123".&lt;/p&gt;
&lt;p class="code"&gt;. &lt;span class="command"&gt;setX&lt;/span&gt;("xyz");&lt;br /&gt;
$x;&lt;/p&gt;
&lt;p&gt;Finally! Our variable has changed.&lt;/p&gt;
&lt;p&gt;For a bit of background, I ran into this when trying to re-run my profile script. I was aware of the "&amp;amp;" execution prefix and tried &lt;span class="Code"&gt;&amp;amp;$profile&lt;/span&gt; to re-run my profile. It worked, but the new functions I added to it weren't available to me. I went thru several work-arounds to make them available before manning-up and asking what the deal was. Actually, I did try using the "." prefix, but I tried &lt;span class="Code"&gt;.$profile&lt;/span&gt;, which didn't work. This was because I didn't put a space between the "." and the function (or file name, in my case).&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=uad8N"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=uad8N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=7pgFn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=7pgFn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/464068713" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Mon, 24 Nov 2008 16:43:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1002</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1002/PowerShell-Tip-Scoping-Script-Execution.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1076/The-Future-of-Windows-Live-FolderShare.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1076</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1076&amp;PortalID=2&amp;TabID=142</trackback:ping><title>The Future of Windows Live FolderShare</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/460790611/The-Future-of-Windows-Live-FolderShare.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Windows Live FolderShare + Mesh = Sync" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/foldersharemesh.png" /&gt;&lt;/p&gt;
&lt;p&gt;Windows Live FolderShare used to be the most important tool in &lt;a href="http://www.michaelflanakin.com/tools"&gt;my arsenal&lt;/a&gt;. That changed when Live Mesh was in beta. As soon as I was added to the pre-beta program, FolderShare has been but a mere memory. That decision may have been a questionable one, however. There has been talk about FolderShare being rebranded as Live Sync in the past and &lt;a href="http://foldershareteam.spaces.live.com/Blog/cns!9D186A323DE6761!1646.entry"&gt;the FolderShare team just confirmed it&lt;/a&gt;. The bigger picture, however, is that what we now see as "Live Mesh" is only a sample application on top of the Windows Azure platform. The key here is "sample application." I always knew the sync and remote desktop capabilities within Mesh were intended to be a proof of what's possible, but it was never posed as an app that would eventually be dropped. Granted, I'm an early-adopter and am used to a few cuts and bruises, but it would have been nice to see where this was going. Maybe that doesn't matter, tho, because I don't think I'd change anything. Live Mesh is significantly better than FolderShare and I imagine Live Sync won't be much better in its initial incarnation. Soon, however, we'll start seeing Live Sync take over more and more of what Live Mesh has to offer. How long will it take? Only time will tell. I'd like to say 6 months, but the FolderShare team is notoriously slow. The only thing we really have to cling to is that the FolderShare... err, Sync team should be able to take a lot of what Mesh has today. The impression I got was that this was an evolutionary improvement, tho. We'll see what happens next month. Either way, be ready to switch from Mesh to Sync. I'm hoping the team manages to automate that upgrade/migration so it will be relatively transparent. The only problem I see today is the format FolderShare uses during the sync process; however, it sounds like Sync will change all that. Like I said, tho, we'll see...&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=XSUpN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=XSUpN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=XcePn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=XcePn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/460790611" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Fri, 21 Nov 2008 12:55:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1076</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1076/The-Future-of-Windows-Live-FolderShare.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1075/IE-8-Release-Timeline.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1075</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1075&amp;PortalID=2&amp;TabID=142</trackback:ping><title>IE 8 Release Timeline</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/460063778/IE-8-Release-Timeline.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Internet Explorer" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/ie8beta.png" /&gt;&lt;/p&gt;
&lt;p&gt;Yesterday, the IE team posted &lt;a href="http://blogs.msdn.com/ie/archive/2008/11/19/ie8-what-s-after-beta-2.aspx"&gt;a comment about what's next for IE8&lt;/a&gt;. I didn't get much out of this except for the fact that the next set of bits will be available in early 2009 and will include all the major enhancements, which includes feature adds and performance tweaks -- and let's hope they're significant because IE8b2 is slower than IE7 for me. It sounds like this next release will be a release candidate (RC), but that statement was very non-commital, so it may end up being beta 3. Either way, it sounds like this next one will be the last pre-release before the final version. There's still no word on when that will be, but with &lt;a href="http://www.edbott.com/weblog/?p=2181"&gt;speculation that Windows 7 will be out in late 2009&lt;/a&gt;, it would make a lot of sense to see it just a little earlier than that release, so it's bundled with the new OS.&lt;/p&gt;
&lt;p&gt;I won't confirm or deny anything about what I've heard about the Windows 7 release, but IE8 has most definitely slipped past &lt;a href="http://blogs.zdnet.com/microsoft/?p=1543"&gt;internal deadlines&lt;/a&gt;. I know the team has thought about IE9, but as we drive past one milestone after another for IE8, there's no telling when that'll happen -- not that I don't have a guess &lt;img alt="" src="http://www.michaelflanakin.com/Providers/HtmlEditorProviders/Fck/FCKeditor/editor/images/smiley/msn/wink_smile.gif" /&gt; I can't say I'm surprised, tho. The timelines I saw for IE8 and 9 were &lt;em&gt;very &lt;/em&gt;ambitious; especially, when you consider how long it took IE7 to come to market. Of course, that comes more from neglect than anything. I should say that those timelines were very rough and only touched on some high level things to look forward to. What's surprised me with IE8 so far is that it's missing one of the things I could swear I heard about over a year ago. Maybe it was pushed back -- although, I didn't see it in the IE9 slide deck -- or maybe I'm just crazy. Either way, I hope it sees the light of day, because it sounded extremely exciting from a productivity standpoint.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=vU8mN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=vU8mN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=vaYOn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=vaYOn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/460063778" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Thu, 20 Nov 2008 21:27:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1075</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1075/IE-8-Release-Timeline.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1073/Converting-ToFrom-Hex-with-PowerShell.aspx#Comments</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1073</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1073&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Converting To/From Hex with PowerShell</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/459886669/Converting-ToFrom-Hex-with-PowerShell.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="PowerShell" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/powershell.png" /&gt;&lt;/p&gt;
&lt;p&gt;If you're doing any web or WPF/Silverlight work, you're probably used to dealing with the &lt;a href="http://en.wikipedia.org/wiki/RGB"&gt;RGB (red-green-blue) hex&amp;#160;color format&lt;/a&gt;. I can't tell you how many times over the years I've opened the calculator to convert to/from hex values to either get a specific value or find out what percentage is being used. I'm sure graphic artists deal with this a lot, because I know I find it relatively annoying when I've used apps in the past that only accepted 3 decimal numbers instead of the RGB hex format. That's changed over the years, however. I will say that this is perhaps worsened by WPF and Silverlight, which have incorporated opacity using the &lt;a href="http://en.wikipedia.org/wiki/RGBA_color_space"&gt;RGBA (red-green-blue-alpha) spec&lt;/a&gt;, which is arguably a misnomer, since the alpha channel (aka opacity or transparency) is specified first. All that aside, I found myself wanting to find out what a certain opacity was when working on a WPF app, so instead of opening the calculator, I referred to my handy-dandy PowerShell, which is always open on my desktop.&lt;/p&gt;
&lt;p&gt;Being a .NET developer, I knew the &lt;span class="code"&gt;&lt;span class="class"&gt;Convert&lt;/span&gt;&lt;/span&gt; class has the ability to convert to/from hex, so I started out with this simple one-liner to convert a hex number to its decimal equivalent.&lt;/p&gt;
&lt;p class="code"&gt;[&lt;span class="class"&gt;Convert&lt;/span&gt;]::ToInt32("a6", 16)&lt;/p&gt;
&lt;p&gt;To go the other way, you simply switch out the method name and first parameter you pass in.&lt;/p&gt;
&lt;p class="code"&gt;[&lt;span class="class"&gt;Convert&lt;/span&gt;]::ToString(166, 16)&lt;/p&gt;
&lt;p&gt;The first parameter is the value to convert and the second value is the base (i.e. 2 for binary, 8 for octal, 10 for decimal, and 16 for hexadecimal).From a PowerShell perspective, there are a two more things to note here, since we're accessing a static method. First, you have to surround the class name with brackets ([]); and, second, you have to separate the class and method names with two semicolons (::). Also note that, for some classes, you may need to use the fully-qualified class name, which includes the namespace.&lt;/p&gt;
&lt;p&gt;After doing this, I remembered the numeric format shortcuts available in C#. For hexadecimal numbers, you can reference a value without treating it as a string by prefixing it with &lt;span class="Code"&gt;0x&lt;/span&gt;. So, to convert my hex number to decimal, I was able to drastically shorten the code (can you even call this "code?").&lt;/p&gt;
&lt;p class="Code"&gt;0xa6&lt;/p&gt;
&lt;p&gt;To go the other way, we'll tap into standard &lt;a href="http://msdn.microsoft.com/en-us/library/txafckwd.aspx"&gt;string formatting&lt;/a&gt; logic. Knowing .NET, our first guess might be to just convert it to PowerShell, like we did before.&lt;/p&gt;
&lt;p class="code"&gt;[&lt;span class="class"&gt;String&lt;/span&gt;]::Format("{0:x}", 166)&lt;/p&gt;
&lt;p&gt;Here, we're specifying a string format that renders the first parameter as hex as well as the number we're converting. This isn't saving us anything, tho. Luckily, we have a bit of PowerShell magic to shorten this for us.&lt;/p&gt;
&lt;p class="code"&gt;"{0:x}" &lt;span class="parameter"&gt;-f&lt;/span&gt; 166&lt;/p&gt;
&lt;p&gt;I thought this was confusing the first time I saw it, but comparing it to the &lt;span class="code"&gt;&lt;span class="class"&gt;String&lt;/span&gt;.Format()&lt;/span&gt; method brings it home for me. Hopefully, for you, too.&lt;/p&gt;
&lt;p&gt;I'm now converting the hex number, but that isn't telling me what the opacity is. This probably isn't even worth mentioning, because I know you're smart enough to figure this out for yourself, but we simply need to use a bit of division to get that percentage.&lt;/p&gt;
&lt;p&gt;&lt;span class="code"&gt;0xa6 / 0xff&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I now know that &lt;span class="code"&gt;A6&lt;/span&gt; is 65%.&lt;/p&gt;
&lt;p&gt;If you find yourself using the calculator every so often while working on something, consider keeping PowerShell in the background and just bringing it up instead. It's a great way to get used to the tool and even boost your productivity, as you get used to things you can do faster in PowerShell than via the mouse.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=tzfJN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=tzfJN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=8mKAn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=8mKAn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/459886669" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Thu, 20 Nov 2008 17:16:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1073</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1073/Converting-ToFrom-Hex-with-PowerShell.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1061/MSDN-Subscription-Updates.aspx#Comments</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1061</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1061&amp;PortalID=2&amp;TabID=142</trackback:ping><title>MSDN Subscription Updates</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/458574379/MSDN-Subscription-Updates.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="MSDN" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/msdn.png" /&gt;&lt;/p&gt;
&lt;p&gt;Do you have an MSDN subscription and want to know what was updated? Are you supposed to receive DVDs, but think you&amp;#160;are missing a few? Unfortunately, I find myself answering "yes" to both of these questions. I was ready to complain about it, but then someone pointed me to the &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/index/default.aspx"&gt;MSDN Subscription Index&lt;/a&gt;. Using this site, you can search for products, view shipment contents, or just see what's new or removed in a shipment. The site has a fairly crappy experience, but&amp;#160;at least it gives you the information. I'm also somewhat annoyed that there isn't an RSS feed. Since I find myself so curious, I'm going to try to keep up with what gets released and share it in my blog feed -- if you're only interested in these updates,&amp;#160;there's also &lt;a href="http://feeds.michaelflanakin.com/flanakin/msdn"&gt;a feed just for the MSDN subscription updates&lt;/a&gt;&amp;#160;&lt;a href="http://feeds.michaelflanakin.com/flanakin/msdn"&gt;&lt;img title="Syndicated feed" height="16" alt="Syndicated feed" width="16" border="0" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/images/icons/feed_16x.gif" /&gt;&lt;/a&gt;. I may be late with the updates because it's a manual process, but I'll also pursue having the MSDN team produce their own feed. I should mention that there is &lt;a href="http://www.microsoft.com/feeds/msdn/en-us/subscriptions/MSDNdata.xml"&gt;a feed for the latest downloads&lt;/a&gt;&amp;#160;&lt;a href="http://www.microsoft.com/feeds/msdn/en-us/subscriptions/MSDNdata.xml"&gt;&lt;img title="Syndicated feed" height="16" alt="Syndicated feed" width="16" border="0" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/images/icons/feed_16x.gif" /&gt;&lt;/a&gt;. I'm going to focus strictly on the DVDs that are released. If I have time, I'll go back a few months and create separate posts for each of the releases. Hopefully, that will make the feed fairly sensible. Having one big catch-up post seems a bit much. These posts will be back-dated, so if you see this post after others, that's why.&lt;/p&gt;
&lt;p&gt;Ya know, I'd be remissed if I didn't say I'm partially expecting someone to email me or comment with a link to an existing RSS feed. There is an &lt;a href="http://blogs.msdn.com/msdnsubscriptions"&gt;MSDN Subscriptions blog&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/msdnsubscriptions/rss.xml"&gt;&lt;img title="Syndicated feed" height="16" alt="Syndicated feed" width="16" border="0" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/images/icons/feed_16x.gif" /&gt;&lt;/a&gt;, but that doesn't seem to tell me what I want to know. If someone knows of a good source, I'd love to hear it.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=myIrN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=myIrN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=n6j2n"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=n6j2n" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/458574379" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Wed, 19 Nov 2008 15:20:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1061</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1061/MSDN-Subscription-Updates.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1060/Google-Apps-vs-OpenOffice.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1060</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1060&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Google Apps vs. OpenOffice</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/450145933/Google-Apps-vs-OpenOffice.aspx</link><description>&lt;p&gt;In the past, many have talked about the desktop vs. cloud wars -- is it really a "war?" -- by comparing productivity suites like Microsoft Office and Google Apps. People have had a lot of speculation about what web apps are capable of and what is truly needed when it comes to admittedly bloated apps, like Microsoft Word; but this is the first time I think we've seen &lt;a href="http://itmanagement.earthweb.com/osrc/article.php/3784091/OpenOffice+vs.+Google+Apps.htm"&gt;two "friendly" competitors go head-to-head&lt;/a&gt;: Google Apps and OpenOffice. I say, "friendly," but use that term relatively loosly. Google is very open source friendly and some may say they operate in the spirit of open source, but there's a big difference between free and "open source." Either way, the results aren't too surprising: Google Apps gets spanked. While nobody has ever said Google Apps was better than Microsoft Office, it's a pretty well known fact that Microsoft Office beats out OpenOffice. Based on the &lt;a href="http://www.mathwords.com/t/transitive_property_inequalities.htm"&gt;transitive property of inequality&lt;/a&gt;, that pretty much says Microsoft Office kicks the livin' hell out of Google Apps. And, with Office Web Access just around the corner, that's pretty much game, set, match on Google Apps. I think Paul Thorrott said it best when he&amp;#160;talked about the "small" web-based rich text editor in&amp;#160;Office Live and how it was better than what Google Apps had to offer.&lt;/p&gt;
&lt;p&gt;Don't get me wrong, I'm not against web-based apps. I actually think we're a long way away from hitting the roof of what the web has to offer... and that's just the current incarnation. The platform itself needs another rev or two, tho. In the meantime, I'm excited to see what Google will come back with. We haven't seen Google react to competition much, other than speeding past very little, very sparse competition at 100 miles an hour. Google has vision, but Microsoft is one fierce competitor. The sleeping giant doesn't sleep for long.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=vse6N"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=vse6N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=Pzvsn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=Pzvsn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/450145933" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Wed, 12 Nov 2008 00:41:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1060</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1060/Google-Apps-vs-OpenOffice.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1059/Install-Java-with-Microsoft-Product.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1059</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1059&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Install Java with Microsoft Product???</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/449017694/Install-Java-with-Microsoft-Product.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Java" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/Weblog/2008/java.png" /&gt;&lt;/p&gt;
&lt;p&gt;Apparently, &lt;a href="http://biz.yahoo.com/prnews/081110/aqm073.html?.v=59"&gt;Sun has switched&lt;/a&gt; from bundling the &lt;a href="http://toolbar.google.com"&gt;Google Toolbar&lt;/a&gt; with &lt;a href="http://java.com"&gt;their releases&lt;/a&gt; to bundling the &lt;a href="http://www.newmsntoolbar.com"&gt;MSN Toolbar&lt;/a&gt;. I'm kind of surprised they aren't using the &lt;a href="http://toolbar.live.com"&gt;Windows Live Toolbar&lt;/a&gt;, but at the same time, the MSN Toolbar&amp;#160;has a much better experience. Whether this was sparked by &lt;a href="http://www.pcpro.co.uk/news/235332/staroffice-dropped-from-google-pack.html"&gt;Google dropping StarOffice like a bad habit&lt;/a&gt; or&amp;#160;not, it's a win for Microsoft. The toolbar comes with Windows Live Search integration (duh) and, even better, uses Silverlight. There must have been some pretty high-level talks to get this approved because Silverlight is a competitor to the yet-to-be-released &lt;a href="http://www.sun.com/software/javafx"&gt;JavaFX&lt;/a&gt;, so I can't see this going thru just because Google pissed someone off. I have a feeling Sun was just trying to whore themselves out as much as possible. The MSN Toolbar deal only applies to Java downloaded by IE on Windows. Everyone else will keep the Google Toolbar based installer. I know Sun is hurting, so this probably just gives them a chance to pad their slowly declining product line.&lt;/p&gt;
&lt;p&gt;Aside from all this, I have to say I hate these things. I wish there weren't deals like this. If you do feel the need to whore yourself out, make it disabled by default. I get aggravated when I see these things as opt-out inclusions. I don't want your crappy toolbar, I don't want an icon on my desktop, I don't want to change my homepage. Get off my freakin' back!!! Bad installer, bad!!!&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=702dN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=702dN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=Bjf3n"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=Bjf3n" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/449017694" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Tue, 11 Nov 2008 00:29:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1059</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1059/Install-Java-with-Microsoft-Product.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1058/OnScreen-Keyboard-for-HTC-Touch-HD.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1058</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1058&amp;PortalID=2&amp;TabID=142</trackback:ping><title>On-Screen Keyboard for HTC Touch HD</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/448843389/OnScreen-Keyboard-for-HTC-Touch-HD.aspx</link><description>&lt;p&gt;I've been looking for a screenshot of the on-screen keyboard that comes on the Touch HD for the past few days and have been remarkably unsuccessful. Even the HTC customer support brushed me off. Wow. Luckily, I stumbled on &lt;a href="http://wmpoweruser.com/?p=1558"&gt;a video that shows how to use an external keyboard&lt;/a&gt;. I don't care about the external keyboard, but it does start off by showing the on-screen keyboard. Unfortunately, the keyboard doesn't seem wildly fantastic, but at least it's not as bad as the keyboard on the Blackberry Storm.&lt;/p&gt;
&lt;p align="center"&gt;&lt;img alt="On-Screen Keyboard for HTC Touch HD" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/HtcTouchHDKeyboard.png" /&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=51QLN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=51QLN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=mufHn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=mufHn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/448843389" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Mon, 10 Nov 2008 21:19:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1058</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1058/OnScreen-Keyboard-for-HTC-Touch-HD.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1057/Live-Search-Homepage.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1057</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1057&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Live Search Homepage</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/448524853/Live-Search-Homepage.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Windows Live Search Homepage" src="http://media.tumblr.com/imEIHVqedfw32y424KnzhDjWo1_500.png" /&gt;&lt;/p&gt;
&lt;p&gt;If you're not familiar with the Live Search homepage at &lt;a href="http://www.live.com"&gt;www.live.com&lt;/a&gt;, you should really check it out. It took a long time, but the Windows Live team finally got something out that really looks better than what you'll find on other services. I've always been a fan of the holiday themes Google and Yahoo use, but with the images on Live's homepage, I have to say there's a much better, much more interesting experience. The image changes daily and it comes with 4 or 5 regions of the image that provide some searches related to the image... usually. Sometimes they're a bit off, but other times, they're absolutely great. My favorite was the one from election day. There was a very cute section that said, "U can haz kittenz instead of politishens." Hillarious.&lt;/p&gt;
&lt;p&gt;I try to check out the new image every day because they're very nice. I just wish I could save some as my desktop. I also wish they'd archive and make them searchable. I did talk to someone on the team, however, and it sounds like they're looking into both of these options. The issue is the licensing agreement for use of the images. Hopefully, we'll see an update to this soon. Until then, keep a look out for the latest image of the day!&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=5SKpN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=5SKpN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=AEgIn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=AEgIn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/448524853" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Mon, 10 Nov 2008 14:04:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1057</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1057/Live-Search-Homepage.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1056/Should-Windows-7-be-Windows-61.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1056</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1056&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Should Windows 7 be Windows 6.1?</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/445849469/Should-Windows-7-be-Windows-61.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Windows 7" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/Weblog/2008/Windows7logo.png" /&gt;&lt;/p&gt;
&lt;p&gt;When I first heard that the next version of Windows was going to be Windows "7" -- back when that was just a codename -- I thought, "What? Wait... no!" &lt;a href="http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/883/Can-Dvorak-Count.aspx"&gt;I don't have a holistic problem with&amp;#160;the&amp;#160;number&lt;/a&gt;. My problem is more with what&amp;#160;"Windows 7" was really supposed to be based on early talks. The chatter led me to believe it was going to be a pretty drastic change from where we are today, in the Windows world. I envisioned some drastic changes from the ground up. Then, after a few months, there was talk about the next version of Windows being codenamed Windows "7." Don't get me wrong, I'm&amp;#160;as excited about the OS as the next guy, but it just doesn't feel like a major release. The name and version number seem to be more about correcting people's invalid perceptions about the state of Windows than actually being a major version jump. Heck, Microsoft has even waffled on whether this is a major vs. minor release. That still seems more about PR, tho.&lt;/p&gt;
&lt;p&gt;If that wasn't enough, there's one thing that really seems to be the final "nail" in the coffin to me: &lt;a href="http://blogs.zdnet.com/microsoft/?p=1703"&gt;Windows Server 2008 R2 will coincide with Windows 7&lt;/a&gt;. An "R2" release, is essentially a major service pack with a couple features thrown in. At least that's my opinion. That's been turned on it's head with the .NET 3.5 and Visual Studio 2008 SP1 of late, but historically, that's how it's worked. Above all, an "R2" release&amp;#160;is &lt;em&gt;not &lt;/em&gt;a major release. Of course, this isn't the first time Microsoft has fallen into the version number debacle.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=wglAN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=wglAN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=nUyXn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=nUyXn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/445849469" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Fri, 07 Nov 2008 19:30:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1056</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1056/Should-Windows-7-be-Windows-61.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1055/Default.aspx#Comments</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1055</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1055&amp;PortalID=2&amp;TabID=142</trackback:ping><title>PowerPoint Error: The printer "Microsoft XPS Document Writer" cannot be found</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/444961510/Default.aspx</link><description>&lt;p&gt;Hopefully, nobody else has run into this, but I've hit a bug in PowerPoint that keeps displaying a dialog with the following error message:&lt;/p&gt;
&lt;blockquote dir="ltr" style="margin-right: 0px"&gt;
&lt;p&gt;&lt;em&gt;&lt;font color="#ff0000"&gt;The printer "Microsoft XPS Document Writer" cannot be found.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p dir="ltr"&gt;I'm on Vista 64 w/ SP1, but I don't think that has anything to do with it. While there aren't many, I did notice that others have also hit this. The problem is, nobody seems to have found a fix. After talking with people close to the dev team, it sounds like this is a postponed bug. I don't know what they meant by "postponed," other than,&amp;#160;"it's not fixed."&amp;#160;&amp;#160;The work-around is to&amp;#160;reinstall the print driver. This surprises me, but there's not much to do about it, I guess. I wouldn't even know where to begin to reinstall the XPS print driver. Whatever. Part of me thinks it has something to do with a malformed PPTX file, but I haven't been able to validate that.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=NQvHN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=NQvHN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=UIyjn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=UIyjn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/444961510" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Wed, 05 Nov 2008 23:16:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1055</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1055/Default.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1054/My-New-Favorite-Shortcut.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1054</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1054&amp;PortalID=2&amp;TabID=142</trackback:ping><title>My New Favorite Shortcut</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/443249518/My-New-Favorite-Shortcut.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Keyboard shortcuts" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/keyboard.png" /&gt;&lt;/p&gt;
&lt;p&gt;I just discovered a new shortcut to add to &lt;a href="http://www.michaelflanakin.com/Articles/tabid/143/articleType/ArticleView/articleId/360/Keyboard-Shortcuts.aspx"&gt;my list of favorites&lt;/a&gt;: &lt;font color="#0000ff"&gt;Alt+Esc&lt;/font&gt;. This moves the current window to the bottom of the "stack." Admittedly, I got a little over-excited about it at first because I thought it minimized the window. It's virtually the same effect, tho. What I'm really looking for are three things:&lt;/p&gt;
&lt;ol&gt;
    &lt;li&gt;Minimize current window&lt;/li&gt;
    &lt;li&gt;Maximize/restore current window&lt;/li&gt;
    &lt;li&gt;Bring window to front or top of the "stack"&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If I had my way, I'd make these available with &lt;font color="#0000ff"&gt;Win+Down&lt;/font&gt; and &lt;font color="#0000ff"&gt;Win+Up&lt;/font&gt; for minimize and maximize/restore and &lt;font color="#0000ff"&gt;Win+Shift+1&lt;/font&gt; thru &lt;font color="#0000ff"&gt;Win+Shift+9&lt;/font&gt; to bring the first thru ninth window to the top of the stack. The latter shortcut might be problematic, when considering grouped&amp;#160;taskbar buttons as well as&amp;#160;the enhancements to the taskbar in Windows 7. Of course, the shortcut could simply bring up a menu, for either of these scenarios, which would still be a good enhancement.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=paURN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=paURN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=sSdtn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=sSdtn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/443249518" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Wed, 05 Nov 2008 12:51:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1054</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1054/My-New-Favorite-Shortcut.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1072/MSDN-Subscription-November-2008.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1072</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1072&amp;PortalID=2&amp;TabID=142</trackback:ping><title>MSDN Subscription: November 2008</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/458730947/MSDN-Subscription-November-2008.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="MSDN" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/msdn.png" /&gt;&lt;/p&gt;
&lt;p&gt;The following consists of the &lt;strong&gt;English&lt;/strong&gt; DVD updates released under the &lt;strong&gt;MSDN Premium (Team Suite)&lt;/strong&gt; subscription level for&amp;#160;&lt;strong&gt;November 2008&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;SDKs/DDKs&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;Disc 2426.30 / Part X15-18258&lt;/em&gt;
    &lt;ul&gt;
        &lt;li&gt;Microsoft .NET Framework 3.5 Service Pack 1&lt;/li&gt;
        &lt;li&gt;Hyper-V™ Updates&lt;/li&gt;
        &lt;li&gt;Windows SharePoint Services 3.0 with SP1 (All Languages)&lt;/li&gt;
        &lt;li&gt;Windows Driver Kit (6001.18001)&lt;/li&gt;
        &lt;li&gt;Windows Mobile 6.0 Professional SDK&lt;/li&gt;
        &lt;li&gt;Windows Mobile 6.0 Standard SDK&lt;/li&gt;
        &lt;li&gt;Windows SDK for Windows Server 2008 and .NET Framework 3.5&lt;/li&gt;
        &lt;li&gt;Visual Basic® for Applications 6.0 SDK v6.5&lt;/li&gt;
        &lt;li&gt;Visual Studio® 2005 SDK v4.0&lt;/li&gt;
        &lt;li&gt;Windows Vista™ Media Center SDK Refresh&lt;/li&gt;
        &lt;li&gt;Microsoft Office Communications Server 2007 SDK (English)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Developer Tools&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;Disc 4406.01 / Part X15-18254 &lt;/em&gt;
    &lt;ul&gt;
        &lt;li&gt;Visual Studio® Team System 2008 Team Foundation Server Workgroup Edition (English)&lt;/li&gt;
        &lt;li&gt;Visual Studio® Team System 2008 Team Foundation Server Service Pack 1 (All Languages)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
    &lt;li&gt;&lt;em&gt;Disc 4603 / Part X15-18246 &lt;/em&gt;
    &lt;ul&gt;
        &lt;li&gt;Visual Studio® 2008 Service Pack 1 (All Languages)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Servers&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;Disc 2436.37 / Part X15-18270&lt;/em&gt;
    &lt;ul&gt;
        &lt;li&gt;Antigen&lt;/li&gt;
        &lt;li&gt;Commerce Server 2007&lt;/li&gt;
        &lt;li&gt;Forefront™ Security&lt;/li&gt;
        &lt;li&gt;Identity Lifecycle Manager 2007 w/ Feature Pack 1&lt;/li&gt;
        &lt;li&gt;Office Communications Server 2007&lt;/li&gt;
        &lt;li&gt;Search Server 2008&lt;/li&gt;
        &lt;li&gt;SQL Server® 2008&lt;/li&gt;
        &lt;li&gt;System Center Configuration Manager 2007 w/SP1&lt;/li&gt;
        &lt;li&gt;System Center Essentials 2007 SP1&lt;/li&gt;
        &lt;li&gt;System Center Operations Manager 2007 w/SP1&lt;/li&gt;
        &lt;li&gt;System Center Mobile Device Manager 2008 (English)&lt;/li&gt;
        &lt;li&gt;Internet Security and Acceleration (ISA) Server 2006 SP1 (All Languages)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Library&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;em&gt;Disc 0001 / Part X15-18560&lt;/em&gt;
    &lt;ul&gt;
        &lt;li&gt;MSDN® Subscriptions Library, November 2008 Edition (English)&lt;/li&gt;
    &lt;/ul&gt;
    &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information, see the &lt;a href="http://msdn.microsoft.com/en-us/subscriptions/index/default.aspx"&gt;MSDN Subscriptions Index&lt;/a&gt;.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=z2NBN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=z2NBN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=0N0kn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=0N0kn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/458730947" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Sat, 01 Nov 2008 17:50:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1072</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1072/MSDN-Subscription-November-2008.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1053/Default.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1053</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1053&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Get Netflix's Latest Watch Instantly Player Today</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/439179759/Default.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Netflix" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/netflix.png" /&gt;&lt;/p&gt;
&lt;p&gt;Netflix recently &lt;a href="http://blog.netflix.com/2008/10/upgrade-to-watch-instantly-on-your-pc.html"&gt;announced a new version of its "Watch Instantly" player&lt;/a&gt; that supports both Windows and Mac. I don't quite have much use for the latter, but I have been eagerly awaiting an update to the player. The player is very basic and, while it does what it needs to, it leaves me&amp;#160;wanting more. After the announcement, I diligently started watching the a movie. Low and behold, nothing changed. Netflix made a comment about slowly rolling the player out, so I figured I'd just have to wait a little longer. Then, &lt;a href="http://blog.netflix.com/2008/10/opt-in-for-new-netflix-movie-player.html"&gt;Netflix announced&lt;/a&gt; that we could &lt;a href="http://www.netflix.com/silverlightoptin"&gt;opt-in for the new player&lt;/a&gt; ourselves. Score!&lt;/p&gt;
&lt;p&gt;Unfortunately, the player doesn't the feature I've wanted the most: the ability to go to the previous and next episodes in a series. I've also wanted subtitles, but that's slightly less important. Beyond that, the player has some nice upgrades, like the still shots shown when you fast forward or rewind. I tend to watch more online than I rent these days, so I'm glad to see the player upgraded and hope they keep at it! I really want to see upgrades to the player a lot more frequently.&lt;/p&gt;
&lt;p&gt;I saw something about keyboard shortcuts, but I didn't find anything very useful. I did, however, find a way to get some debug/diagnostic information. If you're interested, simply use &lt;strong&gt;&lt;font color="#0000ff"&gt;Ctrl+Shift+Left Click&lt;/font&gt;&lt;/strong&gt; to see a diagnostic menu with a few options you may or may not be interested in. Nothing too terribly special, tho. I doubt many would even care.&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=dQX7N"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=dQX7N" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=1lxvn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=1lxvn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/439179759" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Sat, 01 Nov 2008 16:30:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1053</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1053/Default.aspx</feedburner:origLink></item><item><comments>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1052/Visual-Studio-2010-and-NET-40-CTP.aspx#Comments</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/RssComments.aspx?TabID=142&amp;ModuleID=609&amp;ArticleID=1052</wfw:commentRss><trackback:ping>http://www.michaelflanakin.com/DesktopModules/DnnForge%20-%20NewsArticles/Tracking/Trackback.aspx?ArticleID=1052&amp;PortalID=2&amp;TabID=142</trackback:ping><title>Visual Studio 2010 and .NET 4.0 CTP</title><link>http://feeds.michaelflanakin.com/~r/flanakin/~3/439129152/Visual-Studio-2010-and-NET-40-CTP.aspx</link><description>&lt;p&gt;&lt;img style="float: right" alt="Visual Studio" src="http://www.michaelflanakin.com/portals/michaelflanakin.com/weblog/2008/visualstudio.png" /&gt;&lt;/p&gt;
&lt;p&gt;It took me a while to find this download link, so I figured I'd share it. If you want to give &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=922b4655-93d0-4476-bda4-94cf5f8d4814&amp;amp;DisplayLang=en"&gt;Visual Studio 2010 (and .NET 4.0)&lt;/a&gt; a shot, you're only 11 files and ~7.2 GBs away!&lt;/p&gt;
&lt;div class="spanish" lang="es"&gt;&lt;hr class="hidden" /&gt;
&lt;h1 class="title"&gt;Visual Studio 2010 y .NET 4.0&lt;/h1&gt;
&lt;span class="lang"&gt;En Español&lt;/span&gt;
&lt;div class="content"&gt;
&lt;p&gt;Me tomó un rato para encontrar esta descarga, así que quiero compartirlo. Si queires a probar &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=922b4655-93d0-4476-bda4-94cf5f8d4814&amp;amp;DisplayLang=en"&gt;Visual Studio 2010 (y .NET 4.0)&lt;/a&gt;, usted es sólo 11&amp;#160;archivos y ~7,2 GBs fuera de él.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=ZuXoN"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=ZuXoN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.michaelflanakin.com/~f/flanakin?a=0hkPn"&gt;&lt;img src="http://feeds.michaelflanakin.com/~f/flanakin?i=0hkPn" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.michaelflanakin.com/~r/flanakin/~4/439129152" height="1" width="1"/&gt;</description><dc:creator>Michael Flanakin</dc:creator><pubDate>Sat, 01 Nov 2008 15:06:00 GMT</pubDate><guid isPermaLink="false">f1397696-738c-4295-afcd-943feb885714:1052</guid><feedburner:origLink>http://www.michaelflanakin.com/Weblog/tabid/142/articleType/ArticleView/articleId/1052/Visual-Studio-2010-and-NET-40-CTP.aspx</feedburner:origLink></item></channel></rss>
