TWC9 - Illustrator-to-Canvas, msPerformance, ExtensionMethod.net,
- Posted: Oct 15, 2010 at 3:12 PM
- 61,442 Views
- 9 Comments
Download
How do I download the videos?
- To download, right click the file type you would like and pick “Save target as…” or “Save link as…”
Why should I download videos from Channel9?
- It's an easy way to save the videos you like locally.
- You can save the videos in order to watch them offline.
- If all you want is to hear the audio, you can download the MP3!
Which version should I choose?
- If you want to view the video on your PC, Xbox or Media Center, download the High Quality WMV file (this is the highest quality version we have available).
- If you'd like a lower bitrate version, to reduce the download time or cost, then choose the Medium Quality WMV file.
- If you have a Zune, WP7, iPhone, iPad, or iPod device, choose the low or medium MP4 file.
- If you just want to hear the audio of the video, choose the MP3 file.
Right click “Save as…”
- High Quality WMV (PC, Xbox, MCE)
- MP3 (Audio only)
- MP4 (iPod, Zune HD)
- Mid Quality WMV (Lo-band, Mobile)
This week on Channel 9, Dan and Clint discuss the week's top developer news, including:
- Gil Fink - Using the msPerformance object to measure Web page performance with IE9, via Alvin Ashcraft ( Watch )
- Mike Swanson - Mix Online - Plugin to export Adobe Illustrator drawings and animations to HTML 5 Canvas ( Watch )
- Andy Beaulieu - Windows Phone 7 Marketplace submission tips and see Ian Walker's post for more tips ( Watch )
- Steve Marx - Enemy of the show - How to build, package and deploy Windows Azure applications from the command line ( Watch )
- Jeff Blankenburg - 31 Days of Windows Phone 7 developer tips and tricks ( Watch )
- Steve Clayton - DLNA Support for Windows Phone 7 means easy-mode communication ( Watch )
- Code Project - Build a R/C Joystick using an Arduino board to fly a quadcopter ( Watch )
- Elijah Manor - How good C# habits can encourage bad JavaScript habits ( Watch )
- Windows Azure Blog - Two Part series on sending emails from Windows Azure ( Watch )
- John Papa - Free Silverlight Firestarter event on Dec 2nd will be streamed live ( Watch )
Picks of the week!
- Clint's pick: .NET Gadgeteer Device for easily programming hardware ( Watch )
- Dan's pick: ExtensionMethod.net Awesome collection of extension methods for almost everything you'd want ( Watch )
Comments Closed
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Pick of the week! Thanks for the shout-out as always...
BTW, the Watch links for the picks of the weeks are backward (Clint's watch link points at Dan's, Dan's at Clint's)
I love that extensionmethod.net thing. Wonderful!
Also, Dan's rage with the whole string/stream thing is so recognizable. It drives me crazy every single time.
Epic Dan-rant from minute 16:
"But then I try to create... a God-damn stream - but that's an abstract class... so then I need to find... a StreamWriter...but."
Truer words were never spoken... And I love the way it ends with a "but", that but is what every developer feels like a grunt coming from your soul every time you try to convince yourself that correct encapsulation and abstraction layers and architecture comes before productivity and ease-of-use.
Or wait... No it doesn't! Cover the 90% use-cases first and the 10% use-cases later. In the case of symmetric encryption the 90% use-cases are with a string-in string-out. An extension method for this need to be in String - and this needs to happen now as a critical reboot-all-servers update to .NET 4.0! Heck I'll even implement the solution right here and now:
/// <summary> /// Critical extension methods to make encryption and decryption easy. /// </summary> public static class CriticalStringExtensions { /// <summary> /// Gets a Stream containing the bytes from the given string. /// </summary> /// <param name="source">String object.</param> /// <param name="encoding">Encoding to use. Uses UTF8 as default.</param> /// <returns></returns> public static Stream AsStream(this string source, Encoding encoding = null) { if (encoding == null) encoding = Encoding.UTF8; if (source.Length > 0) return new MemoryStream(encoding.GetBytes(source)); else return new MemoryStream(0); } /// <summary> /// Gets a string from the bytes in a stream. /// </summary> /// <param name="source">String object.</param> /// <param name="stream">Stream to read from.</param> /// <param name="encoding">Encoding to use. Uses UTF8 as default.</param> public static string AsString(this Stream stream, Encoding encoding = null) { if (encoding == null) encoding = Encoding.UTF8; using (var reader = new StreamReader(stream, encoding)) { return reader.ReadToEnd(); } } }are you still forced to submit your internal application to the winphone marketplace in order to get them on devices?
phone7 looks really hot but it is (or atleast was) waaay to complicated to get your code onto an actual device... paying 99 bucks to simply deploy your own app to your own phone? come on dudes..
we'd really love to make an app for internal use at my company, but having to submit it to the marketplace where its visible for everyone is an absolute showstopper
both in terms of added work to get it approved for the marketplace, and cost to develop and deploy
@DLNA
DLNA is a protocol but as far as i understand you have to buy a licence from the DLNA group to make an app that uses it. As far as i know there is no special hardware involved, its just an peer2peer network protocol that TVs and other stuff (such as win7) can support
Another great show, and thanks for the good word guys!
@hansol:Not bad; could extend it a little though
public static class CriticalStringExtensions { public static Stream AsStream(this string source, Encoding encoding = null) { var result = Stream.Null; if (source != null && source.Length != 0) result = new MemoryStream((encoding ?? Encoding.UTF8).GetBytes(source)); return result; } public static string AsString(this Stream stream, Encoding encoding = null) { if (stream == null) return string.Empty; using (var reader = new StreamReader(stream, encoding ?? Encoding.UTF8)) return reader.ReadToEnd(); } }A slightly different take. Not necessarily better.If contracts (with static checks!) are available then one should probably use Contract.Requires(source != null); and likewise Contract.Requires(stream != null).
@exoteric: Agreed! I love the succint syntax of the ?? operator, but the Contract.Requires stuff, that's attributes from a feature that's not in production yet, right? Or am I not up to speed here...
@gduncan411: thanks for the heads up, don't tell dan or it will be the last time he'll give me the keys to the car!
@hansol: Code Contracts is a .NET 4.0 feature and so is production ready. Static analysis tools for Code Contracts is a commercial feature of some Visual Studio versions (I forget which). Some Code Contracts features are exposed as attributes, e.g. [Pure]; the above is of course not. I didn't check for how Stream.Null is implemented but it's probably a no-op singleton (I hope).
Remove this comment
Remove this thread
close