Searching for monkeys in Cyberspace

Scenes of Scheme’s San Francisco

clock March 22, 2010 10:43 by author offbeatmammal

Robin Sloan wrote a book and then Emily Cooper remixed it to produce some amazing 3D renderings

You can enjoy them in their original goodness or get a glimpse here if you have Silverlight installed.

To navigate around drag and drop using your mouse or you can select an individual image from the drop-down in the top left hand corner. Zoom in and out using the -/+ icons or your mouse wheel and you can select the full screen experience using the icon in the top right hand corner (just press [Esc] to go back to normal mode)

Silverlight Install and Logging Framework

clock March 15, 2010 22:06 by author offbeatmammal

So, you've just created a great Silverlight application and you want everyone to enjoy it. You, of course, have the Silverlight runtime already installed but what about users who don't have a current version of Silverlight or, worse, are on an unsupported platform?

You could leave them with the standard silverlight.js experience but, let's be honest, it's probably not going to reflect that well against the carefully crafted user experience of your application is it? That said, you've got deadlines and developing install experiences isn't the most exciting task on your to-do list is it?

The Silverlight Install and Logging Framework (SILF) is designed to make that job a little easier for you. Without much more work than designing some screens for a few possible install conditions it handles all the logic and guides the user through install or upgrade experiences and, if you want, even logs the results so you can see what’s working and where you need to tweak the solicitation to make it more attractive.

You can grab the files you need from the temporary home of SILF (hopefully it’ll move to Codeplex soon) and kick the tires (or even the tyres depending on where you’re from ... it’s just javascript so it’s easy to localize, or is that localise!)

Although the full blown thing looks a bit intimidating it’s actually really easy to get started with the basics and then elaborate

<!-- Install the Silveright install and logging controller -->
<script type="text/javascript" src="SILF.js"></script>
<script type="text/javascript">
// Configure logging parameters
SILF.minSlVersion = "3.0.50106.0"; // Required Silverlight version
SILF.SilverlightControlHost = "silverlightControlHost"; // div which contains Silverlight control
// Use this section to configure messages
SILF.PromptInstall = "Please <a href='#' onclick='SILF.InstallClicked()'>click here to install Silverlight</a>";
SILF.PromptFinishInstall = "Please wait for Silverlight installation to complete. You may need to refresh the page.";
SILF.PromptUpgrade = "Please <a href='#' onclick='SILF.UpgradeClicked()'>click here to upgrade Silverlight</a>";
SILF.PromptFinishUpgrade = "Please wait for Silverlight upgrade to complete. You will need to restart your browser.";
SILF.PromptRestart = "Please exit/quit and restart your browser to proceed";
SILF.PromptNotSupported = "Sorry, your browser or operating system are not supported";
// If you want to redirect on Silverlight not supported, rather than show a slate, enable this variable
// SILF.RedirectNotSupported = "";
<body onload="SILF.onLauncherPageLoad();">
<div id="silverlightControlHost" style="height:100;">
<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="940" height="406">
    <param name="Source" value='SmoothStreamingSamplePlayer.xap' /> 
    <param name="InitParams" value='fakemode=,background=#FF000000,autoload=False,autoplay=False,muted=False,stretchmode=0,playlist=&lt;playList><playListItems><playListItem title="Smooth Streaming : Media : Test" description="" mediaSource="" adaptiveStreaming="True" thumbSource=""></playListItem></playListItems></playList>' /> 
    <param name="windowless" value="false" />
    <param name="background" value="black" />
    <param name="minRuntimeVersion" value="3.0.50106.0" />
    <param name="autoUpgrade" value="false" />
    <param name="onerror" value="onSilverlightError" />
    <param name="onload" value="onSilverlightLoad" />

The code owes a lot to the work of Laurence Moroney and Tim Heuer as well as experiences on sites such as Sunday Night Football, FranceTV Olympics and RedBullStratos. It consolidates the current silverlight.js as well as including and extending silverlightSupportedUserAgent.js and silverlightVersion.js and, for the logging functions uses the math.uuid.js library.

In advance of a move to a proper community sources project I’d love to hear your feedback below so we can make this more versatile and useful. If you use it please let us know as well.

Sunday Night Football in Silverlight

clock September 15, 2009 08:57 by author offbeatmammal

SNF Extra in SilverlightIt’s been a little quiet here lately. Not because I didn’t have anything to say but because I’ve been rather busy on a very exciting project. Sunday Night Football.

One of the cool new technologies used for NBCs presentation of the Beijing Olympics was a technology that became known as Smooth Streaming and has now been made available for on-demand content through the Expression Suite and IIS Media Services 3 add on to Windows Server / IIS.

Put simply Smooth Streaming allows you to encode a file into small (2 second) chunks at multiple bitrates (from low quality right through to genuine 720p HD and beyond. IIS delivers those chunks as simple HTTP traffic and the client is able to adapt on the fly to the users playback conditions (CPU load, graphics card capabilities, network throughput) to deliver the best quality experience possible. One huge advantage of using HTTP chunks is that they are just like the web pages and images that we’ve had years to work out how to deliver well - so no complicated server set up, and you can use an existing Content Distribution Network (CDN) without having to roll out any complex new technology. Akamai, Limelight and Level3 are all supporting it today and others are adding it in the near future. You can see an example of it in action at

However we’ve taken it to the next level and are delivering live Smooth Streaming. Using heavily optimized hardware and very efficient versions of the encoder we are able to deliver a live broadcast in the same way. We can now deliver seamless mixing of content, switching camera angles, Picture-in-picture (PIP), ad insertion and all the other features you would expect from a high end interactive broadcast.

Sunday Night Football on NBC is the first time we’ve shown this off and it’s getting rave reviews – not just from the broadcasters and technology pundits but also real PC and Mac users who are getting an experience that they’ve, literally, never had before. 720p HD video, full screen with play by play data, the ability to pick from 4 alternate camera angles, game stats, live interactive chat and a selection of highlight clips all delivered in seamlessly in the same player.

It’s been a huge effort behind the scenes with a shopping list of partners – NBC Sports of course, the IIS Media and Silverlight teams for the server and client technology, Vertigo for the amazing player they built on top of those technologies (on the cutting edge once again), iStreamPlanet for the transcoding using a mix of Inlet and custom tools, Akamai and Microsoft’s own Edge Computing Network (ECN) for content distribution, DART for ad serving (yes,that company owned by Google supports this technology – first announced at MIX07), Conviva, and Omniture for reporting to tell us how it’s performing and of course the fabulous DevDiv BizDev and DPE Media Evangelism teams that I’m part of to pull it all together. Behind the scenes I’ve also using FogBugz to help track and support issues.

The project has involved a lot of late nights, a lot of travel (I think I spent more time in New York, Stamford, San Francisco, Point Richmond and Las Vegas in the last few months than Redmond) but I hope you have a chance to check out SNF Extra 8pm ET / 5pm PT / 6pm CT) sometime this season and enjoy the fruits of our labour.

After several months though I still don’t understand the game! But that’s okay because now we have to take all the lessons we learned here and go on to make NBCs delivery of the Vancouver Olympics even better!

Could Photosynth change the face of classified advertising?

clock April 27, 2009 19:50 by author offbeatmammal

Every listing on eBay or Craigslist has one thing in common – if the seller is serious they’ll include pictures. Sometimes the pictures will be pretty low res cameraphone, other times they will be hi-res dSLR photos taken with proper lighting.

No matter how good the photo though, or the slideshow viewer they’re presented in they’re just like the images everyone is used to seeing.

Now Photosynth has a Silverlight powered viewer there’s no reason not to take advantage of the capabilities to link to a synth or embed it in your listing.

As you can see from the synth above it’s not just a case of throwing a few photos into the tool and hoping for the best – that gets you a pretty choppy result – but even so it’s possible to navigate around the image and even have a look inside. The site has a video that explains the simple steps to create a good synth.

Do you know any examples of people using Photosynth to spice up their listings – and did it help?

MIX09 – Wrangling Partners

clock March 22, 2009 20:36 by author offbeatmammal

MIX_Backstage This was my third MIX (I joined Microsoft a few months after the first) and once again I spent most of the time behind the scenes.

At MIX07 I worked with one Keynote partner, at MIX08 I had partners with demos and presentations in both keynotes and for MIX09 I was the designated “Partner Wrangler” working with the non-Microsoft partners who had demos on-stage. I have to thank Mike (our Keynote owner) for the opportunity this year.

MIX this year was about the “Return on Experience” and was where we announced the final release of ASP.NET MVC as well as the developer beta of Silverlight3 so most of my focus was in those areas.

Once again I was lucky enough to be working with some really great partners who had great stories for us to bring to the event to show off the technologies – so all I really have to do is make sure they get the support they need to finish their applications in time for rehearsals that night before the keynote!

So, who was I wrangling?

StackOverflow The first partner demo in the MIX Keynote was StackOverflow – a great community site for developers to help each other, built on ASP.NET MVC (with standards compliant HTML) and optimized for Search Engine Optimization. Jeff and Joel have a great story and deliver it – like StackOverflow – simply.

MIX09 - Who is that Bald man? Netflix The second partner I worked with was Netflix. Kevin McEntee talked about how Netflix has been using Silverlight both to improve the user experience on both PC and Mac, but also driving the quality of their roll-out to hardware such as the Roku or XBox360 platforms. Kevin and Steve Swasey from Netflix sat down with Tim Harris to give a bit more background on the story.

Much to my amusement I was called on to join Kevin on stage for a few moments at the end of his talk to drive a demo of the Adaptive Streaming technology in the Netflix Instant Watch player. What was really cool about working with Netflix this year was that they were the first partner I worked with back at MIX07 ;)

Bondi Digital Publishing My third partner were Bondi Digital Publishing and Vertigo Software. They have worked together to create an amazing on-line magazine archive viewing platform that takes microfiche content, scans and uses OCR to grab the text, massage the meta data to add some intelligence (linking the contents to the articles, flagging adverts vs content etc) and then display them on the web. At MIX David Anthony from Bondi and Scott Stanfield from Vertigo demonstrated their “next generation” Silverlight3 based platform with Rolling Stone content but after the keynote they launched PlayboyArchive (NSFW!) using Silverlight2.

Tim also sat down with David and Murat Aktar from Bondi and Scott from Vertigo to discuss how they are changing the magazine industry.

KEXP Where the music matters My last (but certainly not least) partner was KEXP. As one of the most successful internet radio stations (and the most successful not-for-profit internet station) they have a never-ending challenge to improve their connection with their audience by delivering high quality content wherever their users are. Taking advantage of the forthcoming Silverlight3 features such as Out of Browser and Offline support combined with cloud services KEXP are looking to the future to make sure they stay at the leading edge. Tom Mara and Aaron Starkey talked about the business benefits as well as demonstrated a prototype of their work. They also provided more background in a video interview shot at their studios.

If you want to see how my partners fit into the overall keynote you can view the on-demand video, or check out Tim Sneath’s live blog of the keynote and of course don’t forget to mark your calendar because MIX10 is coming at Mandalay Bay 15-17 March 2010.

Navizon plus Virtual Earth powered by Popfly

clock October 25, 2008 15:16 by author offbeatmammal

A while ago a built my own code to display my latest location on Navizon (a GPS, WiFi and Celltower location service that runs on Windows Mobile, Nokia and iPhones)

While rolling my own gave me a fair amount of flexibility it struck me as fairly inefficient - all it's doing is grabbing an XML feed with location and displaying it on a map.

Since my first quick play with Popfly I've not really played around with the mashup service, but I had some idle time this morning and wondered what I could do to solve the same problem that way...

Well, 20 minutes later the Navizon + Virtual Earth mashup powered by Popfly was built (you just need to change the Navizon ID to show you instead of defaulting to me - if you sign up to Navizon to try this don't forget my referral code: 5E585D5B5A!)

This mashup refreshes every 30 seconds, pulling the location data from the Navizon XML feed and updates the pushpin with the username and the last seen data.

I'd like to find a way to tweak it so that it remembers the map zoom level for a particular user and makes it easier to change the userid for other folks when they're embedding the mashup (my previous attempt allows you to send userid, width and height of the map as parameters) ... maybe if I have some free time I'll play some more ;)

Hard Rock gets Silverlight Widgets

clock October 14, 2008 10:39 by author offbeatmammal

When Silverlight 2 was first announced at MIX this year Vertigo and the Hard Rock Cafe launched a pretty amazing memorabilia site.

To celebrate the official release of Silverlight 2.0 the site has been upgrade and enhanced. The collection now contains more images, the zooming is faster and smoother and as well as being easy to share links to individual items you can now grab widgets to embed on your own site

It just keeps getting better :) Check ScottGus blog for more information on the Silverlight 2.0 release.

Politics in Hi Def

clock August 25, 2008 20:13 by author offbeatmammal

DNC08 It’ll be interesting to look back on this post when the elections are over to see who the winner is but right now I’m watching the Democratic National Convention in all it’s HD glory.

The video gallery for the official Democratic Convention site has been developed using Silverlight by the folks at Vertio (who also developed the Hard Rock Memorabilia site and released the open source Slide.Show project).

Working with Level3 and Move Networks they are delivering a live HD video experience (not just maxing out your bandwidth – they use adaptive streaming to balance the quality to your connection and PCs capabilities) and within minutes of a speaker finishing at the podium the clip is available for on-demand viewing as well.

The quality is pretty amazing. I look at projects like this with 6 years of experience live streaming Big Brother as a filter and a minimum bar for quality and I wish I had access to these tools back then! They take Windows Media to a whole new level (and with Silverlight they bring in back to the Intel powered Macs with the same level of fidelity). Right now Silverlight doesn’t offer a Linux solution, but with the Moonlight player we can hope the same experience isn’t that far off.

I thought I was impressed, but the folks from Online Video Watch and seem to back my opinion up ;)

I planted a virtual tree

clock July 1, 2008 07:58 by author OffBeatMammal

Thanks to the folks on the Internet Explorer team I planted a Virtual tree. I’ve made some commitments to help improve the environment (for instance I don’t drive to work any more, I take the bus or ride my bike) and if I visit my tree over the next six weeks then the IE folks in conjunction with Carbon Grove will plant a real tree.

As well as supporting the environment the site takes advantages of not only some of the new IE8 features (though it will work just as well in older browsers) but the folks at Jackson Fish Market have done a really creative job in bringing the forests to life.

This is just one of many ways you can get involved in making the world a bit better – recycling, composting, reducing your power bill … it doesn’t have to be hard (just remembering to turn out your office light or shut off your PC when you’re not using it) and over a year it adds up.

Big Picture – getting your Deep Zoom on

clock April 9, 2008 20:55 by author offbeatmammal

At MIX08 one of the projects I helped along the way was the Hard Rock Memorabilia site developed by Vertigo to show off the Deep Zoom capabilities in Silverlight. These are the guys who also released the great Silverlight Codeplex Slide.Show project that I’ve used a couple of times.

Silverlight + Seadragon = Deep Zoom

What I discovered recently is that they’ve shared another project on Codeplex to help make your life easier. This one is called BigPicturetm and it helps by providing a lot of the basic framework for building a Silverlight Deep Zoom app. Now you still need to get your hands dirty with the Deep Zoom Composer and Visual Studio… but this gives you a real headstart.

BTW while we’re on the subject Jon Galloway (also from Vertigo) has written a great breakdown on how Deep Zoom compares to some other solutions and fellow evangelists Laurence Moroney and Jaime Rodriguez (both far cleverer than I) have posted some great write-ups on how to develop Deep Zoom apps in Silverlight.

If you build (or know of) a cool Deep Zoom sample please share it in the comments here.



<<  May 2016  >>

Sign in


    follow OffBeatMammal at

    Donate unused CPU cycles with BOINC Stats and Account Management from






    The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

    © Copyright 2016