Singularity?

7.23.2008

Rush plays their own song on Rock Band!

Labels:

5.23.2008

4.29.2008

Is your Silverlight not Rendering? Silverlight 1.0 CSS display bugs in IE7.

I recently ran across a bug where my Silverlight 1.0 content wasn't rendering 100% of the time in Internet Explorer 7. It took nearly two days of searching before I stumbled onto a solution through trial and error.

It turns out that if you're going to be toggling content visibility using CSS properties "display:none" and "display:block" then be aware that Internet Explorer has really wonky support for percentages used for width and height. It just doesn't seem to render all the content accurately. The hardest thing to figure out is why it works half the time and then doesn't the other half. This sucker was a pain to work through.

By default if you use the Silverlight 1.0 templates from Blend/VS2008 the createObjectEx function uses 100% for the height and width values of the Div containing your Silverlight Object. If you're having problems with Silverlight not rendering as you'd expect, try changing the width and height to a numeric value rather than a percentage. Here is the Default:



Here is it updated and working:


As you can see I ONLY changed two things, but that made all the difference. Hopefully this tidbit of info will help others avoid spending tons of time trying to figure out why IE7 isn't rendering their Silverlight Objects properly.

Labels: ,

3.12.2008

Silverlight Streaming SDK - What I've learned.


I've been working to deploy a Silverlight 1.0 project using the Silverlight Streaming beta service and I wanted to call attention to a few things I learned that weren't explicitly mentioned in the Silverlight Streaming SDK.

  1. Do no include an encoding type in your manifest.xml file. example: I can't confirm this 100% but I kept getting an error message on upload that says "The archive does not meet the criteria for valid applications. Refer to the SDK for detials." Once I removed the declaration I didn't receive the error again.

  2. Do not include any HTML files in your zip file. While html is not included in the list of allowed file types most templates create one just make sure you don't include it in your zip archive

  3. Make sure to remove any Thumbs.db files that may be hiding in your folders. These hidden files are created when you browse through your application with Mac OSX. You may have to enable hidden files to show before you can see that they are there, or look through your zip archive before you upload it. If you don't remove these you'll get the same "The archive does not meet the criteria for valid applications. Refer to the SDK for detials." error message. This one took me a while to figure out.

  4. Adapting the app for Silverlight Streaming was a learning process. I started the project based on a default Silverlight Web Template from Blend. Because of this I had to alter a lot of my code so my app would work in an iframe on the Silverlight Streaming beta service. Documentation to adapt my code was scarce so I had to piece together a lot of different information from working Silverlight Streaming examples into a solution. The two biggest pieces of information I wanted to share can be found in this code:


    Inside the shellOnLoad function is where the handleLoad function is called. The handleLoad function is called when the Silverlight Object is created and the XAML is ready. This is very important and if you use a default template from Blend or Visual Studio you will use this function. Also you'll see the var obj line. This gives you the instance of the Silverlight OBJECT tag. Without it, you're handleLoad function will fail. The tricky part is figuring out what the OBJECT tag ID is. I had to use IE7 Developer Toolbar to explore the DOM of my iframe to find it. I think the default is "appId" so hopefully this bit of information will save other the headache of figuring out why their custom app won't run in an iframe.

Just wanted to share these tidbits of information so hopefully it will save others from having trouble using the Silverlight Streaming service.

Happy Coding.

Labels: ,

3.05.2008

MIX08 Keynote online - Silverlight 2


I wasn't able to attend MIX08 this year, but I was really interested in hearing the keynote especially about Silverlight 2. Lucky for me the MIX Online Blog team had a live stream that I could watch. Scott Guthrie came on and started talking just about the time I showed up. He announced the Silverlight 2 Beta 1 which will be available later today.

I caught the tail end of the Internet Explorer 8 talk. www.microsoft.com/ie/ie8 link should be live later today.

Scott Guthrie talked in his keynote a lot about business and monetization of RIAs. How can you create ads, add Ads to your content (video, audio etc).

OMG there is a VS2008 Banner ad Template plugin that they demoed. It created all the crap that I've been working on for a month now that is all packaged up. Hummm...being on a cutting edge can be tough. Now how do I get a copy of this thing so our deployment can be simplified.

HOW DO I DEPLOY THE AD...Video.Show deploying a Silverlight app. Lots of tracking, lots of useful metrics to tell the ad manager about how effective the campaign is. Overlay adverts, Preroll, and much more. Encoder 2 has some potential for rich advertising scenarios.

Using DoubleClick and Silverlight...Ari Poparo talking about supporting media publishing and Silverlight. Has some rich reporting metrics but also cool because a dev can use these events to enhance the experience.

So far, all these cool features aren't available yet...blech.

NBCOlympics.com Site Showoff...Perkins Miller, Matthew Rex. 22,000 hours LIVE ONLINE VIDEO...holy crap! AND VOD (Video On Demand) That's a lot of content. Interactive Video and Video Delivery of the highest quality. DVR capabilities with the live video, rewind live stream and alerts to quickly switch between viewing experiences. Sharing these videos with others, that's pretty damn cool! Picture in Picture hahaha...this thing is completely over the top. Will this create a new standard? HAHAHA 3 different streams of the same event...see what other people are watching...and he just keeps going...gawd. I will have to check this out when it goes live. PLUS, how crazy good will this be for Silverlight deployment?!

Now Scott is going into RIAs. Cross-Browser, Cross-Platform .NET Framework.

  • Multi_Language Support

  • WPF UI Framework

  • Robust Networking

  • Integrated Data Support

  • High Performance

  • Small Download, Fast Install (Beta 1 - 4.6MB download)

  • Rich UI Controls


the "dev-igner" very rich control templateing skinning model Custom Animations, Custom State Changes as well as CSS style changes. Making it very easy to customize and skin these controls. New VS2008 Silverlight support...boy I'd love to have that right now. So you can BUILD the application but then hand off to a designer to re-skin without having to write or update any code. YEAH new beta 1 updates for VS2008 and Expression Studio shipping later today.

Showcasing a new Mail Client from AOL using Silverlight to speed up performance, add custom-ability, create an experience much like a desktop application.

Create experiences that don't exist today...humm...lets see where this goes.


.NET .NET .NET ...

Line of Business - Application Cirque de Soleil using WPF.

HAHA Scott Guthrie circus talent was juggling two balls, and he even dropped um. Funny!

OK..Moving on to Mobile Devices. Silverlight for mobile, bringing Silverlight anywhere, same code, assets skills and tools, Next generation mobile experiences.
Mixer - Darren David, real time mobile based application. Where's the party at...haha funny little app. Your cell phone telling you you've had too much to drink and then making you take a sobriety test...that's funny. Nokia delivers Silverlight...not just for Mobile PCs.

silverlight.weatherbug.com is the Silverlight application that will run native on Nokia phones, on the web, or on WPF on your desktop. Wow...dis on Flash Lite...they said it was too costly to build the weatherbug app. Wonder why that was?

Time to go get all the new updates to get started with Silverlight 2.

Labels: , ,

2.29.2008

Silverlight Streaming Service is brilliant!



I'm using an iframe above to display the Silverlight. I got the code from Tim Sneath's Blog

This is using the new beta service Silverlight Streaming by Windows Live. It offers a free streaming and application hosting solution for delivering high-quality, cross-platform, cross-browser, media-enabled rich interactive applications (RIAs). With the ability to author content in Microsoft Expression Encoder and other third-party editing environments, Web designers maintain complete control of the user experience.

I think this is a brilliant idea. Microsoft has money, bandwidth, and servers. They can "afford" to host Silverlight apps for free because by doing so developers will create new, more engaging experiences using Silverlight. These Silverlight apps will get cooler as more people use them. The cool apps will be posted on blogs all over using the techniques highlighted below. Users hit the blog, see an "Install Silverlight" banner, they click it and boom, Silverlight market penetration. This service keeps the hosting costs down for devs while letting them explore Silverlight and help distribute the plugin to new users.

Labels: , ,

2.25.2008

Trying out Code Posting on blogger.

I've been doing a little searching for on the best way to post code snippets on Blogger because it's kind of a pain in the ***. Blogger strips out all the brackets and doesn't display them, even inside pre tags. Kinda annoying, and I wish Blogger would fix that. My searching, however, yielded some results. I found this gPowered: By the Power of Google...: HOWTO: post code. I installed all the files and now I'm going to give it a go. See how things work.

here goes:
Javascript

PHP

ActionScript2.0 (using Javascript Brush)

Does it work? We will see.

Silverlight 1.0 - Beyond Rich Media Playback

I've been working hard the past few weeks on a Silverlight Rich Media Expandable Ad project at PBJS. The task at hand was to really push the Silverlight 1.0 plug-in to do things it wasn't really designed to do. The project was generally a success. What I'm planning on doing is putting up some code snippets that I used to create this project to hopefully shed some light on Silverlight 1.0 for anyone that is interested in learning it.

The project pays homage to the Justice D.A.N.C.E. Video but adds an interactive element where you can influence the animations on the shirts.



For now, please check out the project.Please leave comments about any questions you might have.

I'm also going to try to see if I can get everything working live on this page, just curious at how well the Silverlight 1.0 plug-in will work inside blogger.

update: didn't work so well. so please view the project here.

With Silverlight 2.0 coming out soon, I'm very interested in making use of some of the features that were lacking in the 1.0 release, namely Rich UI Controls, Alpha Channel support in video, and a more robust graphical rendering engine. This project did push me into learning more about XAML and how to manipulate it using JavaScript.

XAML is pretty slick. The biggest drawback that I've seen so far is it's a little verbose for markup. In many cases, characters could be left out and it would cut down significatly on the file size of the XAML. It also requires all data to be a string, which isn't very efficient in my option. In many cases, I had to convert values to and from integers and strings because I couldn't use integers as values for attributes like Canvas.Left and Opacity. That struck me as a little odd, but I digress.

The other thing is every time you enter a value for a color, XAML adds the Alpha value as well. In my opinion, the default should be full Opacity every time unless otherwise stated. So #ff0000 for Red rather than #ffff0000, which is two extra characters for every color. There is probably a good reason for this, but I don't know why.

The Code Trip is kicking off after Mix08. I'm really anxious to see what kind of apps the guys come up with. I think Silverlight does have a valuable place on the web, and I hope to see more cool implementations in the near future using the new 2.0 features. For now I've been reading Scott Guthrie's blog which has a preview of Silverlight 2.0. There will be a lot of Silverlight hype in the coming months, I'm looking forward to the dust settling and taking a calm look at the aftermath and enjoying some full featured Silverlight Apps.

Labels: , , , , , ,