MIX’06 Slides and Sample Code

Slide deck and samples along with an overview of demo scenarios and code from my MIX talk on the programmable Web...

Last week, I presented a session on the programmable Web at MIX. I've put up the slides and demo code for folks to download. My talk focused on some basic concepts and specifically how Atlas enables you to participate in this new space, i.e. to consume services via building mash-ups, and to further enable the scenario via building services, gadgets, and adding live clipboard support.

The sample application is an online music library, called musicMix, and the demos centered around enhancing this application in various ways. I've included a screenshot of the gadget (featuring the live clipboard button) to add some zing to this post :-)

An overview of the demo flow:

  • Working against RSS feeds, to display top-selling albums from iTunes.
  • Working against SOAP services to retrieve links related to artists using MSN search APIs.
  • Working against REST services to retrieve similar albums, and artist event information (in Las Vegas, given the MIX context) via Amazon and Eventful.
  • Building and offering a REST service such as the top-rated albums play list service using .asmx combined with Atlas web service extensions.
  • Building a Windows Live gadget that consumes this play list.
  • Finally, adding Live Clipboard to copy/paste play lists between applications.
I've included the screenshot of the gadget... simply to show an interesting image to go along with the post :-)

In addition to the specific demo scenarios, my sample code contains new Atlas components for the following scenarios:

  • Login component
  • MediaPlayer control
  • ClipboardButton control
  • Rating control (1 to 5 stars UI ala Netflix)
  • Creating DHTML (directx-based IE) transitions

I'll blog some more about mashups, and these components as time goes.

One note on the running the demos: You will need to sign up with the various web services (MSN search, Amazon, Eventful) to get your own keys or IDs, and fill in the appSettings section in web.config to run the demos (this is definitely one of the downsides with publishing mashup samples). I am planning on hosting the sample live on my site at some point.

Posted on Tuesday, 3/28/2006 @ 10:55 PM | #Presentations


Comments

11 comments have been posted.

rbfigueira

Posted on 3/29/2006 @ 1:35 AM
Thanks for the great demos :)

By the way, for security and code protection what tools we have to protect our *.js (JavaScripts) files ?
For example, you have several .js files whit classes and so on....

What tools you know that we can use to protect that files from being used by other users ?
Thanks

Tarun

Posted on 3/29/2006 @ 4:50 AM
Simply Owesome demos and presentations.
Jan 06 CTP of ATLAS has an issue with Vaildator controls (SetFocus thing). Is it resolved in Marc Release.
Thanks

davidw

Posted on 3/31/2006 @ 10:36 AM
Not sure how others can run the demo, I have error on mix06.Samples.TopSelling.GetTopAlbums, it can not find TopSelling

mix06.Samples.TopSellingAlbums.callBaseMethod(this, 'initialize');
mix06.Samples.TopSelling.GetTopAlbums({ }, Function.createDelegate(this, this._onDataAvailable));

Nikhil Kothari

Posted on 3/31/2006 @ 3:36 PM
A quick check indicates things ought to work... unless I am really missing something basic. The Services\External\TopSelling.asbx defines a class called TopSelling - make sure its listed in the ScriptReferences list in ScriptManager (which it is in Default.aspx).

James

Posted on 4/14/2006 @ 11:24 PM
Cool Stuff...! I regularly visit this section..
One of the things you want to avoid when deploying an ASP.NET application into production is to accidentally (or deliberately) leave the <compilation debug="true"/> switch on within the application's web.config file.

Looking forward to more such exciting stuff.

bass_player

Posted on 4/27/2006 @ 8:07 AM
Can you post a step-by-step tutorial on how you came up with the samples? This will all-the-more entice people to work on Atlas.

creaturita

Posted on 5/10/2006 @ 3:08 PM
I can't get the example working, i am trying to take the 5 star rating logic but i can't. Will you make a 5 star control for the toolkit? could you put one of those there or here? :)

I think it would be a success.

christy

Posted on 5/24/2006 @ 2:43 AM
Thanks for the great demos! I m a regular visitor of this section. And now the demo codes and slides are available for download. Cool!!!

Ed DeGagne

Posted on 5/24/2006 @ 10:37 AM
Nik,

Great job on this project! I was able to get it up and running in about as long as it took to sign up for the webservices.

Keep up the great work!

Kathir

Posted on 6/27/2006 @ 6:10 AM
Hi Nikhil,

I am getting the error on MusicMix.js file in the following line. I have created the Script Reference as per your regulation on this [same error posted by davidw] .

mix06.Samples.TopSellingAlbums.callBaseMethod(this, 'initialize');
mix06.Samples.TopSelling.GetTopAlbums({ }, Function.createDelegate(this, this._onDataAvailable));

Microsoft JScript runtime error: 'mix06.Samples.TopSelling' is null or not an object

Can you please look into this issue and let me know the solution as soon as possible?

Regards,
Kathir

gp

Posted on 7/3/2006 @ 4:39 PM
Here are the hyperlinks to register with the services mentioned in this note.

Eventful http://api.evdb.com/keys/
MSN http://search.msn.com/developer
Amazon https://aws-portal.amazon.com/gp/aws/developer/registration/index.html
The discussion on this post has been closed. Please use my contact form to provide comments.