<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:evnet="http://www.mscommunities.com/rssmodule/"><channel><title>Entries tagged with programming - Channel 10</title><atom:link rel="self" type="application/rss+xml" href="http://www.on10.net/tags/programming/rss/default.aspx" /><image><url>http://mschnlnine.vo.llnwd.net/d1/Dev/App_Themes/Channel10/images/feedimage.png</url><title>Entries tagged with programming - Channel 10</title><link>http://on10.net/tags/programming/</link></image><description>programming</description><link>http://on10.net/tags/programming/</link><language>en-us</language><pubDate>Tue, 18 Nov 2008 20:15:26 GMT</pubDate><lastBuildDate>Tue, 18 Nov 2008 20:15:26 GMT</lastBuildDate><generator>EvNet (EvNet, Version=1.0.3143.743, Culture=neutral, PublicKeyToken=null)</generator><item><title>Teaching Kids To Program: Small Basic</title><description>&lt;img src="http://on10.net/Link/f023931c-f33f-44e4-9fff-e502149c4320/" border="0" /&gt;Microsoft recently introducing a new programming language meant to teach kids how to program: &lt;a href="http://msdn.microsoft.com/en-us/devlabs/cc950524.aspx"&gt;Small Basic&lt;/a&gt;. The project aims to make programming fun by providing a small and easy-to-learn programming language in an environment that’s customize for kids, or any novice programmers looking to venture into the programming world. Small Basic is derived from the original BASIC programming language and is based on the .NET platform. The reason it’s “small” is because it only uses 15 keywords and minimal concepts so as to not be intimidating to those just starting out. You can check out the project over on &lt;a href="http://http://msdn.microsoft.com/en-us/devlabs/cc950524.aspx"&gt;DevLabs site&lt;/a&gt; and you can also download a &lt;a href="http://download.microsoft.com/download/9/0/6/90616372-C4BF-4628-BC82-BD709635220D/Introducing%20Small%20Basic.pdf"&gt;Small Basic Introduction&lt;/a&gt; PDF.&lt;img src="http://on10.net/24092/WebViewBug.aspx?EVT=0" height="1" width="1" alt="" /&gt;</description><comments>http://on10.net/blogs/sarahintampa/Teaching-Kids-To-Program-Small-Basic/</comments><link>http://on10.net/blogs/sarahintampa/Teaching-Kids-To-Program-Small-Basic/</link><pubDate>Wed, 19 Nov 2008 18:41:00 GMT</pubDate><guid isPermaLink="true">http://on10.net/blogs/sarahintampa/Teaching-Kids-To-Program-Small-Basic/</guid><evnet:views>5776</evnet:views><evnet:viewtrackingurl>http://on10.net/24092/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Microsoft recently introducing a new programming language meant to teach kids how to program: &lt;a href="http://msdn.microsoft.com/en-us/devlabs/cc950524.aspx"&gt;Small Basic&lt;/a&gt;. The project aims to make programming fun by providing a small and easy-to-learn programming language in an environment that’s customize for kids, or any novice programmers looking to venture into the programming world. Small Basic is derived from the original BASIC programming language and is based on the .NET platform. The reason it’s “small” is because it only uses 15 keywords and minimal concepts so as to not be intimidating to those just starting out. You can check out the project over on &lt;a href="http://http//msdn.microsoft.com/en-us/devlabs/cc950524.aspx"&gt;DevLabs site&lt;/a&gt; and you can also download a &lt;a href="http://download.microsoft.com/download/9/0/6/90616372-C4BF-4628-BC82-BD709635220D/Introducing%20Small%20Basic.pdf"&gt;Small Basic Introduction&lt;/a&gt; PDF.</evnet:previewtext><media:thumbnail url="http://on10.net/Link/a5f43a95-05f6-467b-88a0-bdbe1daf7b29/" height="240" width="320" /><media:thumbnail url="http://on10.net/Link/f023931c-f33f-44e4-9fff-e502149c4320/" height="64" width="85" /><dc:creator>sarahintampa</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://on10.net/blogs/sarahintampa/Teaching-Kids-To-Program-Small-Basic/RSS/</wfw:commentRss><trackback:ping>http://on10.net/24092/Trackback.aspx</trackback:ping><category>code</category><category>Coding</category><category>education</category><category>educational</category><category>programming</category></item><item><title>Building high-performance Silverlight Media Players</title><description>&lt;h1&gt;Overview&lt;/h1&gt;
&lt;p&gt;So, I get involved in a ton of conversations with various internal and external customers about building Silverlight media players. The great thing about Silverlight is that it's deep, and provides lots of ways to build complex applications that include media playback. The flip side of that is that, like all software engineering, there's plenty of sub-optimal ways to do thing that can have a negative impact on media playback performance.&lt;/p&gt;
&lt;p&gt;While it's tempting to assume everyone's got a hopping dual-core machine these days, that's not the case. When we reviewed the demographics for the NBC Olympics player we were surprised at what a big chunk of the home users had older, slower, &amp;lt; 2 GHz single-core PCs. We were also somewhat surprised by how fast average broadband has gotten. It's not unusual for consumer to now be bound by CPU power more than bandwidth power as far as the highest bitrate they can play.&lt;/p&gt;
&lt;p&gt;That said, don't go overboard – plenty of these techniques are just best practices, but some can limit the complexity of the player you can build. Unless you’re getting dropped frames on the target platforms, easier playback scenarios can support all kinds of effects. Just make sure that the payoff in improved user experience from using the more advanced techniques is worth the perf hit.&lt;/p&gt;
&lt;h1&gt;Fast Path&lt;/h1&gt;
&lt;p&gt;First up, let's talk about getting players on the Fast Path - this is when Silverlight doesn't have to do any scaling or compositing of the video rectangle, saving a good chunk of CPU power as well as memory bandwidth. Again, these are really about HD content – SD and below should have plenty of perf even on older machines.&lt;/p&gt;
&lt;h2&gt;No scaling&lt;/h2&gt;
&lt;p&gt;The video's MediaElement should be exactly the size it was encoded at. The simplest way to do that is to just remove the Height and Width elements from the MediaElement. The perf differential is really just scaling versus no scaling; there's no significant advantage to using scaling tricks like exact 2x or 3x scaling, or just scaling on one axis. Just leaving Height= and Width= blank in the MediaElement is probably the easiest way to turn off scaling.&lt;/p&gt;
&lt;p&gt;Note that this applies to non-square pixel encoded video. For example, 720x480 encoded as 4:3 won't ever use the fast path; you'd have to encode as square pixel 640x480 instead.&lt;/p&gt;
&lt;p&gt;And this applies to scaling down as much as scaling up. Playing 640x480 video at 320x240 will actually take more CPU than just leaving it at 640x480.&lt;/p&gt;
&lt;p&gt;If you’re building a video browser that plays multiple video streams at once, it can be worth it to provide low resolution thumbnails at the display size; that’ll allow a lot more clips to be played at once.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;Pixel-aligned&lt;/h2&gt;
&lt;p&gt;The pixels also need to be exactly aligned with the grid, so no decimal coordinates. Pixel Snapping will do this for you automatically in Silverlight 2.&lt;/p&gt;
&lt;h2&gt;MediaElement, not VideoBrush&lt;/h2&gt;
&lt;p&gt;VideoBrush can enable some great effects like mirroring, but isn't compatible with Fast Path. Unless you’re doing something that requires VideoBrush, stick with MediaElement.&lt;/p&gt;
&lt;h1&gt;General XAML tips&lt;/h1&gt;
&lt;h2&gt;Frame Rate&lt;/h2&gt;
&lt;p&gt;The default frame rate of a Silverlight application is 60 fps, while most media encoded for Silverlight is 30 fps or less. Setting the fps of the application to that of the media. That’ll provide better performance, and and make the video and GUI elements seem more in sync.&lt;/p&gt;
&lt;h2&gt;Don't use Windowless&lt;/h2&gt;
&lt;p&gt;Windowless mode has a slight perf hit on Windows (it doesn't have a significant impact on Mac). Windowless mode is mainly used to mix Silverlight with HTML or other web elements in the same part of the screen.&lt;/p&gt;
&lt;h2&gt;Minimize overlays&lt;/h2&gt;
&lt;p&gt;While the fast path can operate with overlays, they do take additional CPU to process, so minimize the use and size of overlays to what’s useful. Even an invisible object that overlaps the video, like a play control set to transparent, still gets composited. Instead, when the control is going to go invisible, have it move entirely outside of the video rectangle. As long as it's not overlapping the media, no problem.&lt;/p&gt;
&lt;h2&gt;Keep MediaElement opaque&lt;/h2&gt;
&lt;p&gt;Speaking of keeping rendering of transparent elements to a minimum, you definitely want the video itself to be opaque, particularly at bigger frame sizes. Even a hint of transparency will require additional processing of every pixel of every frame.&lt;/p&gt;
&lt;h1&gt;&lt;/h1&gt;
&lt;h1&gt;&lt;/h1&gt;
&lt;h1&gt;Media Encoding&lt;/h1&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;Constrain video peak bitrate&lt;/h2&gt;
&lt;p&gt;The main factors in CPU load for video decoding are how many pixels/second are being displayed (height * width * frames per second), and what the peak data rate of the video is.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;With a CBR (Constant Bitrate) encode, the peak and average bitrate are identical. The only variability is the buffer duration. Using a very long duration buffer (like 20 seconds) can make for a data rate spike within the buffer that can make for challenging encoding. &lt;/li&gt;
    &lt;li&gt;With a VBR (Variable Bitrate) encode, the peak is higher than the average. There’s no rule about what the difference is. Typically the peak is at least 1.5x the average, but it can go a lot higher. &lt;/li&gt;
    &lt;li&gt;A Buffer Window 1-2x your keyframe interval is a good starting point. You don’t want a buffer smaller than the keyframe rate, as the keyframes can wind up be starved for bits, resulting in the “blur-in” effect when the quality drops after a scene change. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you want to calibrate what VBR peak bitrate you can use on a particular system, it works to test with CBR. Just find out the bitrate + buffer duration you can use with CBR, and use that as the peak bitrate and buffer duration with your VBR encodes.&lt;/p&gt;
&lt;p&gt;For high bitrate content where the perf ceiling of the peak buffer is a more important limitation than average bitrate, go ahead and use CBR encoding. That generally provides better results than VBR when the peak would be much less than 1.5x the average.&lt;/p&gt;
&lt;h2&gt;Encode audio at 44.1 KHz mono or stereo&lt;/h2&gt;
&lt;p&gt;Silverlight’s internal audio pipeline runs at 44.1 KHz, so even if the audio comes in at a higher rate, you should resample to 44.1 KHz on encode. If you have a lower sample rate source, it’s fine to leave it at that.&lt;/p&gt;
&lt;p&gt;And while WMA 10 Professional supports 5.1 and 7.1 audio, Silverlight 2 always mixes down to stereo. So if you’re targeting Silverlight only, convert multichannel sources to stereo before encoding. This also enables the much more efficient WMA 10 Pro codec.&lt;/p&gt;
&lt;h2&gt;Crop letterboxing&lt;/h2&gt;
&lt;p&gt;This shouldn’t be news, but don’t encode non-image parts of the video frame, like letterboxing. A 640x480 frame with standard 1.85:1 letterboxing can be cropped and encoded at 640x352 without losing any visual information, but making encoding and decoding faster (36% fewer pixels need to be processed). Silverlight is more than capable of drawing the black rectangles for you client-side if you must have them.&lt;/p&gt;
&lt;h2&gt;Use Inverse Telecine with 3:2 pulldown&lt;/h2&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;p&gt;If the source content was sourced from 24p film, but transferred to 29.97i video with &lt;a href="http://en.wikipedia.org/wiki/3:2_pulldown#2:3_pulldown" target="_blank"&gt;3:2 pulldown&lt;/a&gt;, the video file will see a repeating pattern of three progressive and two interlaced frames. Instead of deinterlacing that video (with the inevitable artifacts) and encoding at 29.97, inverse telecine can restore the original 24p, eliminating deinterlacing artifacts, the framerate judder from the 24 to 30 remapping, and providing more bits per frame. And, of course, it’s 25% easier to decode and display 24 frames a second than 30. Make sure to turn the Silverlight application’s frame rate  down to 24 fps as well.&lt;/p&gt;
&lt;h2&gt;Encode as square pixel for fast path&lt;/h2&gt;
&lt;p&gt;If you’re shooting for the fast path, note that the scaling required for playing back anamorphic video will turn it off. If you have 16:9 720x480 source, you want to play back in a 848x480 window (16:9 480p) , you’ll need to encode at 848x480 if you want to get the fast path.&lt;/p&gt;
&lt;p&gt;Depending on the design of your player and the performance of the system, it’ll vary as to whether you’re better off decoding fewer pixels (720x480 instead of 848x480), but losing the fast path. Testing both ways on your target platforms is, as always, the best thing to do.&lt;/p&gt;
&lt;h2&gt;Encode anamorphic sources as anamorphic for non-fast path&lt;/h2&gt;
&lt;p&gt;If you’re not going for the fast path, you might as well encode content authored as anamorphic, as anamorphic. For example, the DVCPROHD codec is internally 960x720 in 720p mode. That would be compressed as 1280x720 for 720p playback in square pixels. But since the source is only 960 wide, encoding at 960x720 (set to a 16:9 aspect ratio) will be 33% more efficient in terms of bitrate and decode performance. Depending on the platform, that can be well-worth the sacrifice of Fast Path.&lt;/p&gt;
&lt;h1&gt;Silverlight 2 specific&lt;/h1&gt;
&lt;h2&gt;Just use Silverlight 2&lt;/h2&gt;
&lt;p&gt;Silverlight 2 has a bunch of &lt;a href="http://on10.net/blogs/benwagg/Silverlight-2-RC0-is-out/" target="_blank"&gt;perf improvements&lt;/a&gt; over Silverlight 1.0, the most notable being a faster VC-1 decoder and better scaling performance (with &lt;a href="http://on10.net/blogs/benwagg/Demo-of-Silverlight-2-scaling-quality-improvements/" target="_blank"&gt;better quality&lt;/a&gt; to boot). The latter means that not using the Fast Path has less of an impact in Silverlight 2 than before.&lt;/p&gt;
&lt;p&gt;The good news is that Silverlight automatically updates, so you don’t need to do anything specific to force this. It can be worth it to retest Silverlight 1.0 and Silverlight 2 Beta applications in Silverlight 2 to see if suggested system requirements can be lowered.&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;Use Andre &amp;amp; Akshay’s Custom Slider&lt;/h2&gt;
&lt;p&gt;Our Silverlight teammates Andre Michaud and Akshay Johar have build a custom slider that offers better performance for video playback, particularly with streaming content. This one doesn’t continuously generate valueChanged events, which would then turn into new seeks in the media file. Instead, it waits to issue them until either mouse up on the slider thumb or slider tracker, or just the last seek of a bunch of them if they come at once. So, the user can wiggle the mouse willly-nilly, but it won’t turn into a seek until the movement slows down, or they let go.&lt;/p&gt;
&lt;p&gt;The code was in my &lt;a href="http://on10.net/blogs/benwagg/New-Custom-Slider-for-Silverlight-2-media-players/" target="_blank"&gt;previous blog post&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;&lt;/h2&gt;
&lt;h2&gt;Use Expression Encoder 2 Service Pack 1 Templates&lt;/h2&gt;
&lt;p&gt;The new Expression Encoder 2 SP1 (which I really need to blog about, but then I should blog about Adaptive Streaming first, which is going to be another long post…) adds new Silverlight 2 templates. These implement the described best practices, including using the fast path if the Job Output’s Stretch Mode=None, and a less manic slider.&lt;/p&gt;
&lt;h1&gt;&lt;a href="http://on10.net/Link/3d6fa2f6-e15a-4301-9aee-a75057654edc/"&gt;&lt;img width="391" height="557" title="image" border="0" alt="image" src="http://on10.net/Link/0237f94c-df5d-49b1-bf43-91197e696f2b/" /&gt;&lt;/a&gt; &lt;/h1&gt;
&lt;h1&gt;Test early, test often, test on your target platforms&lt;/h1&gt;
&lt;p&gt;This was one of my most-used articles of wisdom imparted to me by the legendary &lt;a href="http://playbacktime.com/author/administrator/" target="_blank"&gt;Charles Wiltgen&lt;/a&gt; of &lt;a href="http://kinoma.com/" target="_blank"&gt;Kinoma&lt;/a&gt;. In any project, you want to define your minimum and recommended system specs. You need to have machines of those specs available to test to make sure they actually work. It’s obvious, but often missed. And for complex players with a lot of custom XAML, a Core 2 Extreme can get away with suboptimal design that’ll turn an older P4  into a &lt;a href="http://en.wikipedia.org/wiki/Filmstrip" target="_blank"&gt;filmstrip&lt;/a&gt; emulator (and you don’t even get that “beep”).&lt;/p&gt;&lt;img src="http://on10.net/23940/WebViewBug.aspx?EVT=0" height="1" width="1" alt="" /&gt;</description><comments>http://on10.net/blogs/benwagg/Building-high-performance-Silverlight-Media-Players/</comments><link>http://on10.net/blogs/benwagg/Building-high-performance-Silverlight-Media-Players/</link><pubDate>Mon, 03 Nov 2008 23:33:00 GMT</pubDate><guid isPermaLink="true">http://on10.net/blogs/benwagg/Building-high-performance-Silverlight-Media-Players/</guid><evnet:views>1415</evnet:views><evnet:viewtrackingurl>http://on10.net/23940/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Overview So, I get involved in a ton of conversations with various internal and external customers about building Silverlight media players. The great thing about Silverlight is that it's deep, and provides lots of ways to build complex applications that include media playback. The flip side of that is that, like all software engineering, there's plenty of sub-optimal ways to do thing that can have a negative impact on media playback performance. While it's tempting to assume everyone's got a hopping dual-core machine these days, that's not the case. When we reviewed the demographics for the…</evnet:previewtext><dc:creator>benwaggoner</dc:creator><slash:comments>6</slash:comments><wfw:commentRss>http://on10.net/blogs/benwagg/Building-high-performance-Silverlight-Media-Players/RSS/</wfw:commentRss><trackback:ping>http://on10.net/23940/Trackback.aspx</trackback:ping><category>media players</category><category>programming</category><category>silverlight</category></item><item><title>Jon Udell and Matt MacLaurin on Boku</title><description>&lt;img src="http://on10.net/images/entries/previewsmall/20054.jpg" border="0" /&gt;Boku is a programming development "game" for children that comes&amp;nbsp;out of Microsoft Research (we &lt;a href="http://www.on10.net/Blogs/laura/techfest-07-boku/"&gt;took a look&lt;/a&gt; at Boku at TechFest '07.) It allows children, ages 5 and up, to apply programming elements and rudimentary scripts to characters in the Boku world. &lt;br /&gt;&lt;br /&gt;Jon Udell spoke with Matt MacLaurin from Microsoft's Creative Systems Group and discusses more about Boku, the challenges of the project, how it works, and the importance of providing children with an expression tool for the critical thought required for programming. Read more about &lt;a href="http://blog.jonudell.net/2007/12/10/matt-maclaurin-on-creative-expression-with-boku/"&gt;this interview&lt;/a&gt; on JonUdell.com or jump over to IT Conversations to listen to &lt;a href="http://itc.conversationsnetwork.org/shows/detail3467.html"&gt;the full podcast&lt;/a&gt; (37 min, 17MB).&lt;img src="http://on10.net/20054/WebViewBug.aspx?EVT=0" height="1" width="1" alt="" /&gt;</description><comments>http://on10.net/blogs/larry/Jon-Udell-and-Matt-MacLaurin-on-Boku/</comments><link>http://on10.net/blogs/larry/Jon-Udell-and-Matt-MacLaurin-on-Boku/</link><pubDate>Mon, 10 Dec 2007 21:52:00 GMT</pubDate><guid isPermaLink="true">http://on10.net/blogs/larry/Jon-Udell-and-Matt-MacLaurin-on-Boku/</guid><evnet:views>13069</evnet:views><evnet:viewtrackingurl>http://on10.net/20054/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Boku is a programming development "game" for children that comes&amp;nbsp;out of Microsoft Research (we took a look at Boku at TechFest '07.) It allows children, ages 5 and up, to apply programming elements and rudimentary scripts to characters in the Boku world. Jon Udell spoke with Matt MacLaurin from&amp;#8230;</evnet:previewtext><media:thumbnail url="http://on10.net/images/blogs/Boku1_1.jpg" height="240" width="320" /><media:thumbnail url="http://on10.net/images/entries/previewsmall/20054.jpg" height="64" width="85" /><dc:creator>Larry</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://on10.net/blogs/larry/Jon-Udell-and-Matt-MacLaurin-on-Boku/RSS/</wfw:commentRss><trackback:ping>http://on10.net/20054/Trackback.aspx</trackback:ping><category>Boku</category><category>education</category><category>programming</category></item><item><title>TechFest '07: Boku : Video Games that teach you how to program!</title><description>&lt;img src="http://on10.net/images/entries/previewsmall/Boku_small_on10.jpg" border="0" /&gt;Boku is currently in pre beta stage but it's still incredibly impressive. It's a video game designed to teach children how to program. It runs off an xbox 360 controller and has adorable animations to keep the kids interested- but it teaches&amp;nbsp;REAL programming from coding to debugging. The goal is to attract kids as young as 5 years old by exciting them about the concept and emotional experience of programming. If you have a kid (or perhaps are at the coding level of one) you're going to want to check out Boku!&lt;img src="http://on10.net/16785/WebViewBug.aspx?EVT=0" height="1" width="1" alt="" /&gt;</description><comments>http://on10.net/blogs/laura/TechFest-07-Boku/</comments><link>http://on10.net/blogs/laura/TechFest-07-Boku/</link><pubDate>Tue, 20 Mar 2007 19:47:00 GMT</pubDate><guid isPermaLink="true">http://on10.net/blogs/laura/TechFest-07-Boku/</guid><evnet:views>12198</evnet:views><evnet:viewtrackingurl>http://on10.net/16785/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>Boku is currently in pre beta stage but it's still incredibly impressive. It's a video game designed to teach children how to program. It runs off an xbox 360 controller and has adorable animations to keep the kids interested- but it teaches&amp;nbsp;REAL programming from coding to debugging. The goal&amp;#8230;</evnet:previewtext><media:thumbnail url="http://on10.net/images/entries/preview/Boku_large_on10.jpg" height="240" width="320" /><media:thumbnail url="http://on10.net/images/entries/previewsmall/Boku_small_on10.jpg" height="64" width="85" /><media:group><media:content url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_on10.mp4" expression="full" duration="329" fileSize="19918854" type="video/mp4" medium="video" /><media:content url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_on10.mp3" expression="full" duration="329" fileSize="2636823" type="audio/mp3" medium="audio" /><media:content url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_on10.mp4" expression="full" duration="329" fileSize="19918854" type="video/mp4" medium="video" /><media:content isDefault="true" url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_on10.wma" expression="full" duration="329" fileSize="2678653" type="audio/x-ms-wma" medium="audio" /><media:content isDefault="true" url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_on10.wmv" expression="full" duration="329" fileSize="20965392" type="video/x-ms-wmv" medium="video" /><media:content url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_2MB_on10.wmv" expression="full" duration="329" fileSize="85047531" type="video/x-ms-wmv" medium="video" /><media:content url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_Zune_on10.wmv" expression="full" duration="329" fileSize="26471516" type="video/x-ms-wmv" medium="video" /><media:content url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_s_on10.mp4" expression="full" duration="329" fileSize="21277549" type="video/mp4" medium="video" /><media:content url="http://on10.net/videos/Boku_on10.asx" expression="full" duration="329" fileSize="102" type="video/x-ms-asf" medium="video" /></media:group><enclosure url="http://download.microsoft.com/download/9/e/2/9e2e3c91-4c2f-4dca-b78a-f7727517cce0/Boku_on10.wmv" length="20965392" type="video/x-ms-wmv" /><dc:creator>Laura</dc:creator><slash:comments>8</slash:comments><wfw:commentRss>http://on10.net/blogs/laura/TechFest-07-Boku/RSS/</wfw:commentRss><trackback:ping>http://on10.net/16785/Trackback.aspx</trackback:ping><category>Boku</category><category>education</category><category>programming</category><category>Seattle</category><category>techfest</category><category>video game</category></item><item><title>Integrated Palm Software and a Robotics Cell Seperator.  Let's not forget C ++ and Python!  </title><description>&lt;img src="http://on10.net/images/entries/previewsmall/starfish.jpg" border="0" /&gt;I took a trip to Victoria, British Columbia and made a visit to &lt;a href="http://www.starfishmedical.com/"&gt;StarFish Product Engineering&lt;/a&gt;.  A company who are true innovators in medical device development.  They do a lot of work in ultra sound and opthamology and use programming languages like C++ and Python.  And let me tell ya, the Canadians are just so sweet...as long as you say "Hockey" is the greatest sport ever!  :)&lt;p&gt;Links: &lt;a href="http://www.starfishmedical.com/"&gt;StarFish Medical&lt;/a&gt;&lt;/p&gt;&lt;img src="http://on10.net/3711/WebViewBug.aspx?EVT=0" height="1" width="1" alt="" /&gt;</description><comments>http://on10.net/blogs/tina/3711/</comments><link>http://on10.net/blogs/tina/3711/</link><pubDate>Thu, 29 Jun 2006 11:00:00 GMT</pubDate><guid isPermaLink="true">http://on10.net/blogs/tina/3711/</guid><evnet:views>15555</evnet:views><evnet:viewtrackingurl>http://on10.net/3711/WebViewBug.aspx?EVT=0</evnet:viewtrackingurl><evnet:previewtext>I took a trip to Victoria, British Columbia and made a visit to StarFish Product Engineering.  A company who are true innovators in medical device development.  They do a lot of work in ultra sound and opthamology and use programming languages like C++ and Python.  And let me tell ya, the Canadians&amp;#8230;</evnet:previewtext><media:thumbnail url="http://on10.net/images/entries/preview/starfish.jpg" height="240" width="320" /><media:thumbnail url="http://on10.net/images/entries/previewsmall/starfish.jpg" height="64" width="85" /><media:group><media:content url="http://download.microsoft.com/download/a/3/2/a323620a-3aff-452c-ad1f-b4c8324e114f/Starfish_on10.MP4" expression="full" fileSize="41708085" type="video/mp4" medium="video" /><media:content url="http://download.microsoft.com/download/a/3/2/a323620a-3aff-452c-ad1f-b4c8324e114f/Starfish_on10.MP4" expression="full" fileSize="41708085" type="video/mp4" medium="video" /><media:content isDefault="true" url="http://download.microsoft.com/download/a/3/2/a323620a-3aff-452c-ad1f-b4c8324e114f/Starfish_on10.wmv" expression="full" fileSize="32631143" type="video/x-ms-wmv" medium="video" /><media:content url="http://download.microsoft.com/download/a/3/2/a323620a-3aff-452c-ad1f-b4c8324e114f/Starfish_s_on10.mp4" expression="full" fileSize="38510357" type="video/mp4" medium="video" /><media:content url="http://www.microsoft.com/winme/0606/28068/Starfish_MBR.asx" expression="full" fileSize="114" type="video/x-ms-asf" medium="video" /><media:content url="http://www.starfishmedical.com/" expression="full" type="" /></media:group><enclosure url="http://download.microsoft.com/download/a/3/2/a323620a-3aff-452c-ad1f-b4c8324e114f/Starfish_on10.wmv" length="32631143" type="video/x-ms-wmv" /><dc:creator>Tina</dc:creator><slash:comments>9</slash:comments><wfw:commentRss>http://on10.net/blogs/tina/3711/RSS/</wfw:commentRss><trackback:ping>http://on10.net/3711/Trackback.aspx</trackback:ping><category>gadgets</category><category>health</category><category>medical</category><category>programming</category><category>Victoria</category></item></channel></rss>