<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Brandon.ToString()</title>
	<atom:link href="http://brandonpotter.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://brandonpotter.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Tue, 25 Oct 2011 19:04:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='brandonpotter.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Brandon.ToString()</title>
		<link>http://brandonpotter.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://brandonpotter.wordpress.com/osd.xml" title="Brandon.ToString()" />
	<atom:link rel='hub' href='http://brandonpotter.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Testing how Smooth Streaming chokes</title>
		<link>http://brandonpotter.wordpress.com/2011/07/23/testing-how-smooth-streaming-chokes/</link>
		<comments>http://brandonpotter.wordpress.com/2011/07/23/testing-how-smooth-streaming-chokes/#comments</comments>
		<pubDate>Sat, 23 Jul 2011 13:49:03 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2011/07/23/testing-how-smooth-streaming-chokes/</guid>
		<description><![CDATA[Just for fun, I tested Big Buck Bunny being served through IIS Media Services from the local disk, running on an Amazon EC2 Micro instance (the smallest available). This is a fairly lightweight server, i.e. something you would never want to run in a production environment. Consider this the streaming equivalent of “Will it Blend?”… [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=307&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Just for fun, I tested Big Buck Bunny being served through IIS Media Services from the local disk, running on an Amazon EC2 Micro instance (the smallest available). This is a fairly lightweight server, i.e. something you would never want to run in a production environment. Consider this the streaming equivalent of “<a href="http://www.willitblend.com/" target="_blank">Will it Blend?</a>”…</p>
<p>The results are in – when it’s going well, it’s surprisingly great, and when it’s not going well, it’s terrible. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<blockquote><p>Total Chunks: 2691     <br />Chunks Tested: 2691      <br />Manifest Download Time: 310ms      <br />Avg Video Chunk Response Time: 357ms      <br />Avg Audio Chunk Response Time: 61ms </p>
<p><font color="#008000">Excellent Chunks: 590 (21.92%)       <br />Good Chunks: 1821 (67.67%)</font>      <br /><font color="#ff0000">Warning Chunks: 68 (2.53%)       <br />Degraded Chunks: 6 (0.22%)         <br />Poor Chunks: 206 (7.66%)</font></p>
<p>Stream 0: video, 2962kbps, 2056kbps, 1427kbps, 991kbps, 688kbps, 477kbps, 331kbps, 230kbps     <br />Stream 1: audio, 128kbps</p>
</blockquote>
<p>Things go OK around 89% of the time. But when they don’t, it crashes and burns…</p>
<p><a href="http://brandonpotter.files.wordpress.com/2011/07/image1.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2011/07/image_thumb1.png?w=633&#038;h=402" width="633" height="402" /></a> </p>
<p>Yikes. You can almost feel the Silverlight players freaking out. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/307/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/307/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/307/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=307&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2011/07/23/testing-how-smooth-streaming-chokes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/07/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>IIS Smooth Streaming Performance Testing Tool</title>
		<link>http://brandonpotter.wordpress.com/2011/07/19/iis-smooth-streaming-performance-testing-tool/</link>
		<comments>http://brandonpotter.wordpress.com/2011/07/19/iis-smooth-streaming-performance-testing-tool/#comments</comments>
		<pubDate>Tue, 19 Jul 2011 19:46:49 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2011/07/19/iis-smooth-streaming-performance-testing-tool/</guid>
		<description><![CDATA[If you are deploying a Smooth Streaming infrastructure, you already know it’s all HTTP-based. Requests for little video chunks hit your web server, and your web server looks up the correct video “chunk” within the audio/video file and serves it up. However, it’s can be difficult to get a good benchmark on how your infrastructure [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=303&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you are deploying a Smooth Streaming infrastructure, you already know it’s all HTTP-based. Requests for little video chunks hit your web server, and your web server looks up the correct video “chunk” within the audio/video file and serves it up.</p>
<p>However, it’s can be difficult to get a good benchmark on how your infrastructure is doing at serving up chunks, especially when your Silverlight clients are seeing random buffering errors or you run into scaling problems.</p>
<p>First off, there is a lot of information available from the <strong><a href="http://smf.cloudapp.net/healthmonitor" target="_blank">Smooth Streaming Health Monitor</a></strong> app – In a couple seconds you can have a trace of what decisions the Silverlight Adaptive Streaming Media Element is making and export that out to Excel.</p>
<p>But when you just need comprehensive chunk data on all bitrates to diagnose how your origin/CDN is doing, I made this app (almost called it “Chunker”):</p>
<p><a href="http://brandonpotter.files.wordpress.com/2011/07/image.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;margin:0 5px;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2011/07/image_thumb.png?w=679&#038;h=330" width="679" height="330" /></a></p>
<p>Enter the <strong>manifest URL</strong> of the on-demand smooth stream you want to test (note that this does not currently support live or composite manifests), for example: <em><strong>http://server.com/streams/BigBuckBunny.ism/Manifest</strong></em></p>
<p>Once you click <strong>Begin Test</strong>, a new test tab will open and start requesting chunks based on the manifest information. The results will tell you if you may have a problem with your disk IO on your origin or some other problem preventing chunks being delivered in a timely manner.</p>
<p><strong>Note:</strong> Only the first 1000 bytes (almost 1K) of each chunk is downloaded. The point here is not to test bandwidth, but rather test your infrastructure’s performance as it relates to reading/seeking fragments and assembling chunks.</p>
<p>Hopefully based on the assessment of each chunk, you can get an idea of how your CDN / origin / standalone box is doing at delivering chunks.</p>
<p><strong><font size="3"><a href="http://applicationdeployment.x9tech.com/SmoothStreamingPerfTestingTool/SmoothStreaming.PerformanceTesting.WinUI.application" target="_blank">Run Smooth Stream Performance Testing Tool</a></font></strong> (ClickOnce)</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/303/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/303/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/303/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/303/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/303/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/303/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/303/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/303/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=303&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2011/07/19/iis-smooth-streaming-performance-testing-tool/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/07/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Live Smooth Streaming &#8211; Cinderella is stuck at home.</title>
		<link>http://brandonpotter.wordpress.com/2011/07/06/live-smooth-streaming-cinderella-is-stuck-at-home/</link>
		<comments>http://brandonpotter.wordpress.com/2011/07/06/live-smooth-streaming-cinderella-is-stuck-at-home/#comments</comments>
		<pubDate>Wed, 06 Jul 2011 20:15:52 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Smooth Streaming]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2011/07/06/live-smooth-streaming-cinderella-is-stuck-at-home/</guid>
		<description><![CDATA[About a month ago, I made a decision to pull Live Smooth Streaming support from our Nimbus product offering. It is our most requested feature by far. Nearly every account signup wants to live stream, and who wouldn’t? I’m not crazy. Problem is, Live Smooth Streaming is the Cinderella of content delivery, and she’s stuck [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=298&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>About a month ago, I made a decision to pull Live Smooth Streaming support from our Nimbus product offering. It is our most requested feature by far. Nearly every account signup wants to live stream, and who wouldn’t?</p>
<p>I’m not crazy. Problem is, Live Smooth Streaming is the Cinderella of content delivery, and she’s stuck at home.</p>
<p><strong>A little background</strong> – This “smooth streaming” concept kicked off somewhere around 2009 (MSFT’s first Smooth Streaming event I believe was the French Open). To get in the game, you had to have some crazy hardware, most likely a couple dedicated encoders running $20K a piece. Add to that 10mbps of upstream bandwidth to support it, and you’ve got a behemoth (yep, I said behemoth) of flying bits to deal with. Cinderella rides in a really, really expensive carriage.</p>
<p>Then, in 2010, Microsoft released Expression Encoder 4. The gates of heaven opened, and no longer did you have to have a $20K encoder – you could now do it with a piece of software that costs in between “free” to $200. This is where we came in. We provided the publishing points, origin services, and CDN – everything you needed to deliver your live event to the world.</p>
<p>Folks started using it, and streaming events from corporate webinars in the USA to operas in Russia. While it was okay for the most part, we found in a consistent stream of support issues:</p>
<ul>
<li>While most folks had hardware good enough for single-bitrate streams (good enough for Flash, Windows Media, UStream), it was by and large insufficient for Smooth Streaming. Trying to overtax the hardware produced weird results with audio/video sync and reliability issues.</li>
<li>Connection recovery wasn’t pretty.</li>
</ul>
<p>After a number of months with these issues, I pulled it. That begs the question, what now? I think the answer lies in encoding.</p>
<p><strong>There is no question</strong> that adaptive streaming is the future. There is and will continue to be a big difference between the bandwidth you have at work, at home, on your mobile device, and soon, in your car. There’s a big difference between the size of your iPhone screen and your 60” living room smart TV. Media must adapt to your device and network before we can move toward phasing out television and toward interactive experiences on a wide scale.</p>
<p>This is what makes Smooth Streaming the Cinderella of live video on the web; the most beautiful solution, sitting at home mopping the floors while stepsister Flash is off to the ball. I’m not knocking services like UStream and Livestream.com – they’re good services; but just using older technology.</p>
<p><strong>Smooth Streaming will remain an option reserved only for those with huge budgets</strong> for as long as 100% of the encoding burden is on the client. The bar is too high for this technology.</p>
<p>At MIX ‘11 in Vegas, the Channel 9 team did an incredible job of <a href="http://channel9.msdn.com/Events/MIX/MIX11/MED01" target="_blank">producing and streaming the event</a>. They rented fiber at $500/hr and a bank of encoders. These are not normal people. This is a huge corporation with a high-profile event. It looks great, but the bar is 5 miles high in the sky.</p>
<p>Non-mainstream sports. Concerts. User groups. Weddings. Church. Webinars. Corporate training. Just a few examples of live events that have huge potential for higher-quality engagement that will keep deferring to other technologies until the bar is lowered. In other words, normal people are going to be happy with Cinderella’s stepsisters until the carriage is affordable.</p>
<p><strong>So that’s what we’re going to do next.</strong> We’re moving encoding “to the cloud”. In a couple weeks we’ll push out the first beta. With the burden of encoding moved to the datacenter, we can push as much quality as your connection can handle, with a high quality stream on normal hardware. This is the first step in making a superior adaptive-streaming technology accessible to the events that can benefit from it.</p>
<p>Come on Cinderella, hop in.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/298/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/298/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/298/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=298&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2011/07/06/live-smooth-streaming-cinderella-is-stuck-at-home/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>
	</item>
		<item>
		<title>Criticizing Technology Preferences and the Expensify Train Wreck</title>
		<link>http://brandonpotter.wordpress.com/2011/03/27/criticizing-technology-preferences-and-the-expensify-train-wreck/</link>
		<comments>http://brandonpotter.wordpress.com/2011/03/27/criticizing-technology-preferences-and-the-expensify-train-wreck/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 04:56:13 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[General Development]]></category>
		<category><![CDATA[General Technology]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2011/03/27/criticizing-technology-preferences-and-the-expensify-train-wreck/</guid>
		<description><![CDATA[So this past Friday, the CEO of Expensify, David Barrett, started off the weekend by ticking off 97.2% of the .NET community with a “Why we don’t hire .NET programmers” blog post. This goes on from time to time. This weekend it’s .NET vs. whatever language(s) that Expensify prefers; other times it’s network equipment like [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=249&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So this past Friday, the CEO of Expensify, David Barrett, started off the weekend by <a href="http://blog.expensify.com/2011/03/25/ceo-friday-why-we-dont-hire-net-programmers/" target="_blank">ticking off 97.2% of the .NET community</a> with a “Why we don’t hire .NET programmers” blog post.</p>
<p><img style="border-bottom:0;border-left:0;display:inline;margin-left:0;border-top:0;margin-right:0;border-right:0;" title="mac-vs-pc[1]" border="0" alt="mac-vs-pc[1]" align="left" src="http://brandonpotter.files.wordpress.com/2011/03/macvspc1.jpg?w=240&#038;h=183" width="240" height="183" />This goes on from time to time. This weekend it’s .NET vs. whatever language(s) that Expensify prefers; other times it’s network equipment like Cisco vs. HP vs. Netgear vs. Dell, followed by Mac vs. PC and, let us not forget iPhone vs. Droid. Technology racism, if you will.</p>
<p>No one is ever correct in generalized, vague discussions, especially when talking technology platforms. Like driving on a highway, you can cover a lot of distance in a short time, but you really haven’t spent any time in the towns you just blew through.</p>
<p>The technology of choice depends on the work at hand.</p>
<p>Case in point: This past week, I went to work. I sat down on my desk, where I have a PC and a Mac.</p>
<p>I connected to our Cisco wireless access points, connected to our HP and Dell switches.</p>
<p>I used this network connection to code in C# on my Windows PC, PuTTy’d into a few of our Linux servers, edited a couple PHP scripts in nano, dabbled a bit in C++ DirectShow filters, wrote Javascript-style sketches for an Arduino, integrated systems with Microsoft CRM, created a SQL database and integrated with Oracle, streamed 2 live events through Silverlight and Windows Media Services, talked on my VoIP phone, looked up information on a SharePoint intranet, and FaceTime’d on my iPad.</p>
<p>Mixed bowl, huh.</p>
<p>I love swimming in such a soupy mix, because it makes me a better solution provider when I have more than one tool on my belt – and it gives me respect for each vastly different approach that these tools take.</p>
<p>The CEO of Expensify ultimately compared .NET to “cooking in a McDonalds kitchen” – trying to make the point that folks who use .NET are sheltered from low-level details (a “real kitchen”).</p>
<blockquote><p>“None of this makes you a “bad programmer”. All these differences are perfectly irrelevant if you just want to make 1.6 oz burgers as fast as possible, and commit the rest of your career to an endless series of McDonalds menus. But every day spent in that kitchen is a day NOT spent in a real kitchen, learning how to cook real food, and write real code.”</p>
</blockquote>
<p>I guess the C# I wrote last week was fake code. I guess I wrote it for a fake customer. I suppose the check they’ll send me is fake. Does the PHP count?</p>
<p>You see, a good cook can make a great meal – er, real food &#8211; in a McDonalds kitchen. Or over a campfire. Or at a steakhouse.</p>
<p>The point I wanted to blog about so that I don’t forget is this: There is a huge difference between a vague and specific technology criticism. The question we’ve got to ask, that changes the game is:</p>
<p><em>“In what context, and in what example?”</em></p>
<p>“Macs are better than PCs.” In what context? (Certainly not ERP. But certainly print graphics.)</p>
<p>“iPhone is better than Droid.” In what context? (Certainly not turn-by-turn navigation. But certainly videoconferencing.)</p>
<p>… and back to Expensify:</p>
<blockquote><p>“Again, this isn’t a rant against .NET — it’s fine. It’s not even a rant against .NET developers being incapable of learning — they can learn as well as anyone. It’s a rant against <em>.NET teaching the wrong things for startups</em>.”</p>
</blockquote>
<p>In what context, and in what example? What wrong things? And whose startup?</p>
<p>If you’re unable to answer that question, you may as well be arguing <a href="http://mentalpandiculation.com/2011/03/why-i-dont-hang-out-with-people-named-david/" target="_blank">Why You Don’t Hang Out With People Named David</a>.</p>
<p>Make your choice for the job at hand. Deliver great solutions, in whatever kitchen you cook.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/249/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/249/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/249/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/249/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/249/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/249/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/249/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/249/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=249&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2011/03/27/criticizing-technology-preferences-and-the-expensify-train-wreck/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/03/macvspc1.jpg" medium="image">
			<media:title type="html">mac-vs-pc[1]</media:title>
		</media:content>
	</item>
		<item>
		<title>iPad 2 and FaceTime on a TV: This Mirror is Foggy</title>
		<link>http://brandonpotter.wordpress.com/2011/03/15/ipad-2-and-facetime-on-a-tv-this-mirror-is-foggy/</link>
		<comments>http://brandonpotter.wordpress.com/2011/03/15/ipad-2-and-facetime-on-a-tv-this-mirror-is-foggy/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 00:57:36 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[iPad]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2011/03/15/ipad-2-and-facetime-on-a-tv-this-mirror-is-foggy/</guid>
		<description><![CDATA[I’m learning a few things about the iPad 2 as we try to stretch its limits. The situation is this: As a simple “remote broadcast” setup, we want to connect FaceTime to a regular TV (with composite inputs – you know, the Yellow / Red / White jacks), so that we can see the remote [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=246&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I’m learning a few things about the iPad 2 as we try to stretch its limits.</p>
<p>The situation is this: As a simple “remote broadcast” setup, we want to connect FaceTime to a regular TV (with composite inputs – you know, the Yellow / Red / White jacks), so that we can see the remote person on the TV. Seems pretty simple, with iPad 2’s display mirroring features, right? Well, not exactly.</p>
<p>(If you’re a nerd, the “TV” in this equation is actually a video capture card; we’re piping FaceTime into a live encoder and broadcasting it to a live stream. Think CNN Skype interview-style. A reasonably-priced capture card is no different than an older model TV with no HDMI input, with S-Video and Composite inputs.)</p>
<p>So, on to the adventure. Apple has a few different connectors for the iPad/iPhone/iPod Touch that mirror the display or provide a TV out in some form or fashion. Let’s bring out our contestants:</p>
<p><strong><a href="http://store.apple.com/us/product/MC748ZM/A" target="_blank">Apple 30-pin to Composite AV Cable</a></strong> (the yellow / red / white thingies)</p>
<p><a href="http://brandonpotter.files.wordpress.com/2011/03/mc7481.png"><img style="border-bottom:0;border-left:0;display:inline;margin-left:0;border-top:0;margin-right:0;border-right:0;" title="MC748[1]" border="0" alt="MC748[1]" align="left" src="http://brandonpotter.files.wordpress.com/2011/03/mc7481_thumb.png?w=244&#038;h=244" width="244" height="244" /></a> </p>
<p>This would naturally be the most direct approach, but unfortunately, doesn’t work. This doesn’t mirror, but rather functions as a TV Out display. You can play a video over it, but does not provide display mirroring. When using the FaceTime app, there is no signal.</p>
<p>Goodbye, Composite AV Cable.</p>
<p>&#160;</p>
<p>The direct approach doesn’t work, so if you’re like me, you’ll just take the next best option and try to convert it to Composite:</p>
<p>&#160;</p>
<p><strong><a href="http://store.apple.com/us/product/MC953" target="_blank">Apple Digital AV Adapter</a></strong> (the HDMI cable)</p>
<p><a href="http://brandonpotter.files.wordpress.com/2011/03/mc953_av11.png"><img style="border-bottom:0;border-left:0;display:inline;margin-left:0;border-top:0;margin-right:0;border-right:0;" title="MC953_AV1[1]" border="0" alt="MC953_AV1[1]" align="left" src="http://brandonpotter.files.wordpress.com/2011/03/mc953_av11_thumb.png?w=244&#038;h=244" width="244" height="244" /></a> </p>
<p>This works reasonably well as a display mirroring solution. I connected it to a Samsung LCD TV, and the picture seems a little overexposed, but it does the job and mirrors FaceTime on TV via HDMI. One major drawback to our eventual old composite TV destination:</p>
<p><strong><font color="#ff0000">Your HDMI display/conversion device MUST support <a href="http://en.wikipedia.org/wiki/High-bandwidth_Digital_Content_Protection" target="_blank">HDCP HDMI</a>.</font></strong> So in this case, if you’re thinking all you need to do is <a href="http://www.amazon.com/gp/product/B0013LTNF8" target="_blank">convert HDMI to composite</a>, most HDMI converters don’t support HDCP. This one just doesn’t output any signal.</p>
<p>&#160;</p>
<p>&#160;</p>
<p><strong><a href="http://store.apple.com/us/product/MC552ZM/B" target="_blank">Apple VGA Adapter</a></strong></p>
<p><a href="http://brandonpotter.files.wordpress.com/2011/03/mc552_av11.png"><img style="border-bottom:0;border-left:0;display:inline;margin-left:0;border-top:0;margin-right:0;border-right:0;" title="MC552_AV1[1]" border="0" alt="MC552_AV1[1]" align="left" src="http://brandonpotter.files.wordpress.com/2011/03/mc552_av11_thumb.png?w=244&#038;h=131" width="244" height="131" /></a> </p>
<p>Alas, we have a solution.</p>
<p>VGA adapter does, indeed, mirror FaceTime on iPad 2. And, you can <a href="http://sewelldirect.com/pc-to-tv-adapter.asp?ad_source=GoogleAdWords&amp;ad_medium=PPC&amp;ad_term=sewell%20PC%20to%20TV&amp;ad_campaign=14683743&amp;ad_group=2076469803&amp;ad_network=search&amp;ad_creative=7218809403&amp;gclid=CJ6-sLTv0acCFQjs7QodkUxi9A" target="_blank">scan convert it to Composite</a>.</p>
<p>&#160;</p>
<p>All things considered, the “mirroring” functionality in iPad 2 works great in HDMI (mostly as advertised except when Hollywood’s legal people get in the way), but this was a fun little trip through the iPad Accessories aisle.</p>
<p>I imagine this will become a popular solution as FaceTime reaches more devices and more iPads get turned into presentation platforms, so I hope this post will save a little time and a little headache if you’re on the same journey. Happy Mirroring!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/246/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/246/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/246/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=246&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2011/03/15/ipad-2-and-facetime-on-a-tv-this-mirror-is-foggy/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/03/mc7481_thumb.png" medium="image">
			<media:title type="html">MC748[1]</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/03/mc953_av11_thumb.png" medium="image">
			<media:title type="html">MC953_AV1[1]</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/03/mc552_av11_thumb.png" medium="image">
			<media:title type="html">MC552_AV1[1]</media:title>
		</media:content>
	</item>
		<item>
		<title>Jan 2011: State of the Stream</title>
		<link>http://brandonpotter.wordpress.com/2011/01/31/jan-2011-state-of-the-stream/</link>
		<comments>http://brandonpotter.wordpress.com/2011/01/31/jan-2011-state-of-the-stream/#comments</comments>
		<pubDate>Tue, 01 Feb 2011 04:41:56 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[General Development]]></category>
		<category><![CDATA[Smooth Streaming]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2011/01/31/jan-2011-state-of-the-stream/</guid>
		<description><![CDATA[It’s been a little while since my last blog entry, mostly because of being incredibly busy, and busy on a lot of projects that I can’t share. But today, online streaming is a topic of discussion that’s been burning our ears on a number of fronts, and this post is dedicated to taking an honest [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=239&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>It’s been a little while since my last blog entry, mostly because of being incredibly busy, and busy on a lot of projects that I can’t share. But today, online streaming is a topic of discussion that’s been burning our ears on a number of fronts, and this post is dedicated to taking an honest look at where we’re at, where things are going, and what has to change along the way. Just in this past week alone, I’ve heard of and participated in some successes, failures, and setbacks for a number of clients.</p>
<h3>Some Background</h3>
<p>For years now, the team at X9 has supported a reasonably-sized media delivery infrastructure comprised of Windows Media, Flash, and most recently, IIS Smooth Streaming. Last year alone we served up hundreds of thousands of hours of content, and a little over 10,000 video assets passed through our “doors” to be delivered across the internet. We’ve been around this block a few times, and a new/major twist in the technology has been coming around every 2 to 3 years.</p>
<p>There are 2 common things I’ve observed with nearly every technology available today:</p>
<ul>
<li>Generally designed for on-demand delivery, with live broadcasts as a second-rate citizen</li>
<li>Critically lacking in the area of encoding, distribution, or client-side playback</li>
</ul>
<p>If only there were a way to clearly see which technologies in the “big 3” were performing well, like a…</p>
<h3></h3>
<h3>Streaming Technology Report Card</h3>
<p><a href="http://brandonpotter.files.wordpress.com/2011/01/streamtechreportcard.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="StreamTechReportCard" border="0" alt="StreamTechReportCard" src="http://brandonpotter.files.wordpress.com/2011/01/streamtechreportcard_thumb.png?w=578&#038;h=533" width="578" height="533" /></a></p>
<p>Bam! Done.</p>
<p>Now, mind you: This is the official report card from me and only me, using my experience in these technologies as it relates to the small and mid-sized streaming market, using features that are only important to me as we have experienced them as a company. These scores also do not take specialized hardware into account; this is streaming on hardware that normal people and normal companies have and can afford, so there are no $30,000-per-channel encoding devices or massive render farms in this equation.</p>
<p>You may also notice that there is no “summary” or “winning technology” – that’s not the point here; rather, each technology suffers different shortcomings across its usage path through the encoding / distribution / client-playback process – only winners in each feature category.</p>
<p>I have excluded some other technologies that we do support (for example, Shoutcast, QuickTime) in favor of focusing on the big 3 for video delivery.</p>
<p>Now, let’s go over some observations on the overall media delivery path.</p>
<h3>Encoding: Nothing Exciting Here.</h3>
<p>Overall, the encoding process across technologies is…. meh, okay. Classic Windows Media has been around the longest and, by far, has the largest market penetration. You can encode WMV in any number of tools and nearly every video editing package on Earth. It’s performance is okay. The Achilles heel for Windows Media is the quality. It takes a large, large amount of bandwidth and video size to get to the smooth, professional look that Flash and Silverlight/IIS Smooth Streaming offer with H.264. Nevertheless, the majority of our assets are still Windows Media, because of the complexities and shortcomings of Silverlight/IIS Smooth Streaming that we’re still working through.</p>
<p>Flash’s tooling and integration with video editors and automated encoding libraries is hit and miss. There isn’t really a ubiquitous “go-to” solution for encoding and publishing Flash video. Moreover, the market is littered with third-party utilities of poor quality that makes you want to just use YouTube instead.</p>
<p>One of the best – if a bit complicated – workflows comes from Silverlight Smooth Streaming with encoding done by Expression Encoder. However, since Adaptive Bitrate streaming requires encoding a stream up to 8 times, it’s extremely resource-intensive to pull off this format.</p>
<p>There have also been some great advancements here recently from the Smooth Streaming team (batch encoding Transform Manager, for example).</p>
<p><strong>By Next Year (Encoding):</strong> </p>
<p>There’s not too much going horribly wrong in the Encoding areas of all 3 technologies, but there is some room for improvement. Windows Media is still a stronghold because of the encoding and distribution problems of Silverlight/IIS Smooth Streaming. That’s a sad place for a technology to be; however, the worst shortcomings in Windows Media (quality and client experience) have already been addressed in Smooth Streaming, so it’s time for WM to fade off into the sunset… if Smooth Streaming can fill in some gaps in Distribution to get us there.</p>
<p>Flash – we need some better tooling for on-demand.</p>
<h3>Distribution: Joy and Pain, all By Design</h3>
<p>If there’s one area to improve upon in the streaming industry, distribution is it.</p>
<p>The scores here really reflect the different personalities of each technology, and their makers. I’d like to hit on each point in depth here:</p>
<h4><strong>Encoder Upstream Bandwidth Required (applies to Live streams only)</strong></h4>
<p>Both Windows Media and Flash are pretty much the same here. You want to deliver a 350kbps stream; you’ll need 350kbps. However, what makes Smooth Streaming great really kills it for live remote broadcasts. By the time you encode a stream a few times, you have to have a good, solid high-speed upstream connection at minimum to even be in the game. This is a problem for a lot of locations here in the U.S., with upstream bandwidth being prohibitively expensive outside of datacenters.</p>
<p><strong>By Next Year:</strong> The model of intense encoding resources and high bandwidth at the encoder doesn’t make sense for Smooth Streaming. In a year, I’d like to see Smooth Streaming at a point where we can send one high-quality broadcast to the datacenter level, and encode it at multiple-bitrates there; from an architecture standpoint, this reduces the cost at the point of encoding and puts the more expensive processing and bandwidth load at the datacenter, where it should be.</p>
<h4><strong>Encoder Software Variety/Options (applies to Live Streams only)</strong></h4>
<p>Windows Media definitely gets an A here, with nearly every “webcasting” software supporting it. Flash has a couple options (since it’s an RTSP based stream), but Flash Media Encoder is free and works pretty well; perhaps 3rd party vendors gave up?</p>
<p>Smooth Streaming gets a D here, with Expression Encoder 4 being the only software package available.</p>
<p><strong>By Next Year:</strong> More options for Smooth Streaming support, please.</p>
<h4><strong>Encoding Connection / Interruption Recovery (applies to Live Streams only)</strong></h4>
<p>Ahhh, this one is near and dear to my heart – and one of the biggest pain points.</p>
<p>One of the best measures of a technology is how it fails.</p>
<p>Flash nails this, and Microsoft still has it backwards in both Windows Media and Smooth Streaming. Specifically, I’m talking about how the encoders behave in a <em>Push</em> scenario (the encoder connects to the server and pushes content to it, as is the case with most remote live broadcasts, where you don’t have the luxury of network and firewall control).</p>
<p>Once you start pushing a Flash stream (with Flash Media Encoder), it’s an unstoppable force. If the connection is interrupted, it reconnects automatically. Simple concept, right? Flash, you get to sit this one out… we’ll call you back into the hot seat in a minute.</p>
<p>Not according to MSFT, and I’m not sure why – perhaps I’ll try to contact some MSFT folks on The Twitter to find out. Windows Media Encoder (legacy) and the Expression Encoder family (new &amp; shiny) both blow up when there’s a hiccup, and require a manual encoder restart. We’ve even written a prototype encoder shell using the Expression API’s just to get around this issue.</p>
<p>In Smooth Streaming, there is sort of a reason for this; each 2-second video “chunk” is timestamped in metadata, so things get a little complicated when you start timestamping over your timestamps, but there’s no reason why the encoder can’t keep a timeline counter running and try reconnecting.</p>
<p>To be fair, again, this is specific to Push streams. Pull streams are very reliable with both Windows Media and Smooth Streaming, and it’s the style we use whenever possible. I do maintain that the design is backwards, though – when you have enough network control to open up ports and facilitate a Pull stream, you most likely also have control over the QoS quality which will yield a far lower interruption rate in the first place. But I digress.</p>
<p><strong>By Next Year:</strong> Microsoft has a seriously great platform with Smooth Streaming, but this is a dealbreaker in our market. Encoders must tolerate interruptions better than they do now, and Smooth Streaming restarts are a big pain point, exponentially so with CDN’s.</p>
<h4>Server-Side Administration</h4>
<p>As far as administration goes, Windows Media is a clear winner. Flash Media Server is okay, with some sorta-works-but-not-sure-how <a href="http://www.wowzamedia.com/" target="_blank">third-party solutions</a> in the mix, and while Smooth Streaming is somewhat simple in concept (made clearer with some ever-improving modules), it’s still somewhat difficult to get a good picture of what’s going on, especially with live streams. (So much so, that we made a <a href="http://www.nimbushd.com" target="_blank">product</a> out of it.)</p>
<p><strong>By Next Year:</strong> I’d like to see the Smooth Streaming administration modules in IIS7 become clearer with greater visibility of realtime statistics and reporting, or perhaps – architecturally speaking, a web-based dashboard viewable remotely (similar to WM’s remote administration). Additionally, starting and stopping live Smooth Streams needs to be rethought. It has to become automatic.</p>
<h4>CDN/WAN Caching and Scalability</h4>
<p>The fundamental shift from constant TCP streams of data or progressive downloads to HTTP adaptive chunks puts Smooth Streaming in the lead here. When your video is no different than images on a web site, caching and scalability become a lot easier with WAN caching and CDN tools that were designed just for that. (If you have no idea what I’m talking about, just skip this.)</p>
<p>On the other side of the fence, Windows Media and Flash live have some hurdles when scaling out to external CDNs, and requires platform-specific tools on the CDN side.</p>
<p><strong>By Next Year:</strong> All hail HTTP adaptive. Flash, get on this train (or at least get your people to use the train you already have). Like, by default.</p>
<h3>Client-Side Playback: Buffering = Not Good</h3>
<p>I think the grades speak for themselves here, and most people reading this are already familiar with the different experiences. IIS Smooth Streaming, by far, provides an extremely compelling experience on the desktop through Silverlight, Windows Phone, and iOS devices. While <a href="http://www.apple.com/hotnews/thoughts-on-flash/" target="_blank">it’s clear we won’t see the Flash runtime itself on iOS</a> anytime soon, Smooth Streaming offers a compelling mobile strategy as well for iOS and Windows Phone. None of the platforms here really target Droid.</p>
<p>The client side experience really comes down to the quality of video, and buffering behavior. Until Flash really embraces adaptive HTTP, it will, along with Windows Media, trail Silverlight Smooth Streaming as a client experience.</p>
<p><strong>By Next Year:</strong> I’d like to see Flash become a better adaptive streaming platform, with better tooling to support it. The only other thing that could create compelling client experiences would be mobile in-browser runtimes, so that on iOS and Windows Phone you could build out RIA players.</p>
<h3>OK, I’m done.</h3>
<p>I think this brain dump is complete for now. If you’ve stumbled upon this post and you’ve seen real, working solutions for some of the shortcomings of these streaming platforms discussed, or why some design decisions were made in each regard, I’d love to know about them. Leave a comment – happy streaming!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/239/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=239&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2011/01/31/jan-2011-state-of-the-stream/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2011/01/streamtechreportcard_thumb.png" medium="image">
			<media:title type="html">StreamTechReportCard</media:title>
		</media:content>
	</item>
		<item>
		<title>Visual Studio tip: Turn off #region when generating interface code</title>
		<link>http://brandonpotter.wordpress.com/2010/11/11/visual-studio-tip-turn-off-region-when-generating-interface-code/</link>
		<comments>http://brandonpotter.wordpress.com/2010/11/11/visual-studio-tip-turn-off-region-when-generating-interface-code/#comments</comments>
		<pubDate>Fri, 12 Nov 2010 00:04:28 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[General Development]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2010/11/11/visual-studio-tip-turn-off-region-when-generating-interface-code/</guid>
		<description><![CDATA[I’ve gotten to the point where I don’t like #region tags in code – it’s what you do when you need to sweep some code under a rug. As such, it’s really annoying to me when implementing an interface and VS generates nice #region tags all the time. Props to this StackOverflow question/answer for the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=235&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I’ve gotten to the point where I don’t like <strong>#region</strong> tags in code – it’s what you do when you need to sweep some code under a rug.</p>
<p>As such, it’s really annoying to me when implementing an interface and VS generates nice #region tags all the time.</p>
<p>Props to <a href="http://stackoverflow.com/questions/460933/remove-the-automatic-region-endregion-tags-when-implementing-an-interface-in-vi" target="_blank">this StackOverflow question/answer</a> for the solution.</p>
<p>Tools &gt; Options &gt; Text Editor &gt; C# &gt; Advanced &gt; uncheck “<em>Surround generated code with #region</em>”.</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/11/image.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/11/image_thumb.png?w=464&#038;h=270" width="464" height="270" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/235/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/235/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/235/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=235&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2010/11/11/visual-studio-tip-turn-off-region-when-generating-interface-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/11/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Punished for not installing a toolbar!</title>
		<link>http://brandonpotter.wordpress.com/2010/10/22/punished-for-not-installing-a-toolbar/</link>
		<comments>http://brandonpotter.wordpress.com/2010/10/22/punished-for-not-installing-a-toolbar/#comments</comments>
		<pubDate>Fri, 22 Oct 2010 21:01:33 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2010/10/22/punished-for-not-installing-a-toolbar/</guid>
		<description><![CDATA[This one was a new one… I thought having to avoid toolbars bundled with the application I actually wanted was the punishment, but here’s a new one: When I unchecked “Install the new Bing Bar”, the Next button actually turned into a disabled 30-second countdown! &#160; I guess this is a new technique… Punish with [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=231&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This one was a new one… I thought having to avoid toolbars bundled with the application I actually wanted <strong>was</strong> the punishment, but here’s a new one: When I unchecked “Install the new Bing Bar”, the <strong>Next</strong> button actually turned into a disabled 30-second countdown!</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/10/image3.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/10/image_thumb3.png?w=400&#038;h=308" width="400" height="308" /></a>&#160;</p>
<p>I guess this is a new technique… Punish with Patience. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/231/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/231/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/231/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=231&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2010/10/22/punished-for-not-installing-a-toolbar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/10/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Dear Adobe: This is NOT okay</title>
		<link>http://brandonpotter.wordpress.com/2010/10/21/dear-adobe-this-is-not-okay/</link>
		<comments>http://brandonpotter.wordpress.com/2010/10/21/dear-adobe-this-is-not-okay/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 16:03:50 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Adobe]]></category>
		<category><![CDATA[General Development]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2010/10/21/dear-adobe-this-is-not-okay/</guid>
		<description><![CDATA[According to RIAStats.com, Adobe Flash is installed on over 96% of computers. That’s why I was astonished at the most recent Flash update to 10.1. This morning I was prompted to update Flash because of a security issue via the latest update of Firefox. No problem, however, this was the first clue that Adobe was [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=228&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>According to <a href="http://www.riastats.com" target="_blank">RIAStats.com</a>, Adobe Flash is installed on over 96% of computers.</p>
<p>That’s why I was astonished at the most recent Flash update to 10.1. This morning I was prompted to update Flash because of a security issue via the latest update of Firefox. No problem, however, this was the first clue that Adobe was starting to abuse their place as a popular browser plugin:</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/10/image.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/10/image_thumb.png?w=498&#038;h=165" width="498" height="165" /></a> </p>
<p>See that? By default, “Include in your download” – McAfee Security Scan Plus. I’ve used McAfee. I’m not fond of their software. I don’t want it. I just want Flash. No problem… I unchecked “Include in your download” and downloaded Flash player.</p>
<p>So then I downloaded the Adobe Download Manager (let’s not get into the pet peeve of downloading a downloader), and to my surprise:</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/10/image1.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/10/image_thumb1.png?w=488&#038;h=319" width="488" height="319" /></a> </p>
<p>Flash Player at least asked me to accept the license terms. Not only did McAfee Security Scan Plus download and install automatically when I specifically unchecked that option – it installs quickly and automatically with no confirmation. Almost like they knew I would say no if given the chance.</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/10/image2.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/10/image_thumb2.png?w=271&#038;h=210" width="271" height="210" /></a> </p>
<p>So Adobe, here’s my list of grievances:</p>
<ol>
<li>Attempting to include third-party software by default, especially when it isn’t related to what I actually want (and you know that), is unethical.</li>
<li>Browser plugin runtimes are to be treated as sacred. We as developers use them to bring great experiences to the web, and in turn, get users to install your product. It is imperative that our users trust your runtime. You have disrespected us, disrespected the users we serve, and destroyed that trust by making such a move.</li>
<li>Waiting until version 10 and 96% browser plugin market penetration to do this is unacceptable. Being the #1 rich content plugin comes with an industry-wide responsibility.</li>
<li>Including the download anyway, when I specifically unchecked the option, turns a previously respected Flash runtime into malware.</li>
</ol>
<p>Please reconsider this delivery model. This is not about Flash in particular, but it is about users being able to trust the applications we deliver to them. The more we leave users with a bad taste in their mouths after updates, the less they’ll update… and that ultimately hurts us all.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/228/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/228/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/228/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=228&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2010/10/21/dear-adobe-this-is-not-okay/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/10/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/10/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/10/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>MOSS 2007: Get Feature ID the easy and lazy way</title>
		<link>http://brandonpotter.wordpress.com/2010/09/30/moss-2007-get-feature-id-the-easy-and-lazy-way/</link>
		<comments>http://brandonpotter.wordpress.com/2010/09/30/moss-2007-get-feature-id-the-easy-and-lazy-way/#comments</comments>
		<pubDate>Thu, 30 Sep 2010 14:33:50 +0000</pubDate>
		<dc:creator>Brandon</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">https://brandonpotter.wordpress.com/2010/09/30/moss-2007-get-feature-id-the-easy-and-lazy-way/</guid>
		<description><![CDATA[Quick MOSS tip-o-the-day: If you need to retrieve the ID (GUID) of a Feature, for running STSADM commands, etc, there’s a quick and easy way to do this for features that are currently activated: 1. Go to your Site Settings, where your features are listed and you see the Activate/Deactivate buttons. 2. Press the Deactivate [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=221&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Quick MOSS tip-o-the-day:</p>
<p>If you need to retrieve the ID (GUID) of a Feature, for running STSADM commands, etc, there’s a quick and easy way to do this for features that are currently activated:</p>
<p>1. Go to your Site Settings, where your features are listed and you see the Activate/Deactivate buttons.</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/09/image20.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/09/image_thumb20.png?w=481&#038;h=175" width="481" height="175" /></a> </p>
<p>2. Press the Deactivate button (don’t worry, this goes to a confirmation page, so you’re not causing anything to happen yet)</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/09/image21.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/09/image_thumb21.png?w=457&#038;h=83" width="457" height="83" /></a> </p>
<p>3. While you’re on the confirmation page, take a look at your browser address bar – voila, your feature ID:</p>
<p>http://server/_layouts/DeactivateFeature.aspx?FeatureId=<strong><font color="#ff0000">f6924d36-2fa8-4f0b-b16d-06b7250180fa</font></strong></p>
</p>
<p><a href="http://brandonpotter.files.wordpress.com/2010/09/image22.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://brandonpotter.files.wordpress.com/2010/09/image_thumb22.png?w=479&#038;h=55" width="479" height="55" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/brandonpotter.wordpress.com/221/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/brandonpotter.wordpress.com/221/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/brandonpotter.wordpress.com/221/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/brandonpotter.wordpress.com/221/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/brandonpotter.wordpress.com/221/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/brandonpotter.wordpress.com/221/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/brandonpotter.wordpress.com/221/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/brandonpotter.wordpress.com/221/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=brandonpotter.wordpress.com&amp;blog=6492261&amp;post=221&amp;subd=brandonpotter&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://brandonpotter.wordpress.com/2010/09/30/moss-2007-get-feature-id-the-easy-and-lazy-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/029a02787eaa511b45a261da93c9fb36?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Brandon</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/09/image_thumb20.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/09/image_thumb21.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://brandonpotter.files.wordpress.com/2010/09/image_thumb22.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
	</channel>
</rss>
