Framework Madness!

And other adventures C# and asp.net …

Archive for January 2010

Intermission – Paying for Hulu?

leave a comment »

It’s been out on the web that Hulu is interested in finding paying customers for it’s content. Considering that everyone is in business to make some kind of return, including those in the entertainment industry, it seems reasonable to me. So I’ve been thinking the past day or so about what I personally would be willing to pay for. I’ve boiled it down to three general options, and all would be would have to have at least one thing in common: simultaneous-release-to-web at the same time as broadcast.

1) A “Plus” package.

This would be Hulu has we know it BUT with a) release to web at broadcast time, and b) a more expansive catalog of shows with deeper/older archives.

I would value this at around $10/month even if it had commercials for Hulu-delivered content.

2) A “Premium” package.

This would include the plus package, a selection of 10-20 local and cable station live simulcasts of my choosing, plus the option of online movies (first 4 free or discounted per month).

I would value this at around $20 even if it had commercials for Hulu-delivered content.

3) An “Ultimate” package, but with some real-teeth.

This would include the premium package but all Hulu-delivered programming would be commercial free after 24 hours after release date, 20-40 local and cable station live simulcasts of my choosing, on demand movies (first 12 free or discounted per month), a catalog of NBA, NFL, and MLB  on-demand replays (up to 7 days) for 3-5 teams of my choice.

I would put this at $30-$40 per month. I would want this to be my ‘digital cable’ that goes with me.

Advertisements

Written by Lynn Eriksen

January 28, 2010 at 11:55 pm

Posted in Uncategorized

Tagged with , ,

Impressions – Office 2010 Beta and Thoughts on the Future of IE

leave a comment »

The other night I tried out the Office 2010 Beta by using Click-To-Run to install. Nice experience! Very nice! All I had to do was enter a key, let the installer whirl for a few short (very short) minutes and then I was presented with an open Power Point app that highlights new office features as well as showing off Power Point’s new GPU animations. Best of all I didn’t have to uninstall my current version of Office just to try the beta.

Now this all happens thru app-virtualization which downloads the apps incrementally, and allows the apps to be available when the majority of the components are installed. BEST OF ALL – the app will be updated AUTOMATICALLY as updates become available.

Now … you can more than likely see where my madman web-dev self is going. IE should be delivered via app-v and should be delivered once more and for always. Did I just say that? Yes. Let’s look at the Pros and Cons.

PROS

  • Security would always be up to date. 

    Considering the blow-back from IE 6 & 7 in regards to the recent Google hacking incident having worry free automatic updates would be a major plus.

  • Progressive deployment of web standards.

    IE could have ‘feature modules’ added along with other upgrades added to the mix as they become available. No more needing to get that next version of IE to get that next generation feature, and then wait for two years for everyone to catch up. 

    Want proof this would work? Check out these FireFox install-base stats. Notice the rapid transition to v 3.5 that is underway? Don’t you wish the IE transition was that fast?

    If this were done there could be a RAPID, BROAD AND CONTINUING roll out of sites embracing new web standards for a massive number of users one the browser uptake reached critical mass. 

    No more waiting 2 years for that next update. When it’s ready – it ships in a ‘No-brainer’ way to EVERYONE.

  • User Bliss!

    Imagine telling a user ‘Install this version of IE and it will be the LAST version of IE you’ll need to install for a LONG TIME. No – seriously. Updates will be automatic, that includes security and new features.’

CONS

  • Moving to a modular release pattern would be very difficult for the IE team.

    An app the size of IE may be very (extremely?) difficult to refactor in such away as to deliver progressive updates via app-v. As an example of modular design benefits the IIS team for version 7 did a MAJOR redesign and they have rolled out a LARGE number of out-of-band updates. They’re very competitive and timely.  

  • Installed IE components are often application dependencies for 3-rd party apps.

    Even though IE has been gradually pull back out of the OS, it still has a very COSY relationship with the OS and lost of programs deployed depend on IE components being installed. My guess is that app-v would make this difficult to manage.

    So putting IE in app-v would not be a singular issue unlike browsers on windows. 

  • Corporate roll-out would always be slower.

    Like it or not corporate IT for the most part always moves slower. They want to test the updates, they want to deploy on a schedule. Understood. There would need to be some way to allow corporate users to prevent feature/modular updates for a short period of time (3 months). Would this even work? How would you version for this x-ua-compatible?

  • UI interface changes would be jarring.

    This is probably the least amount of concern. As long as the UI undergoes a slow transition you could have a browser update/welcome page that shows the new features that have been automatically updated for them. New installs wouldn’t be a problem because the app-v installer would always download the freshest version of the app.

Written by Lynn Eriksen

January 27, 2010 at 7:08 pm

I’m with Coco! (Off topic)

leave a comment »

Keep Conan O'brien

Where he goes – I’ll watch. My brother got me interested in the new Tonight Show in late November and I have enjoyed the show. Never cared much for Jay – don’t dislike him – just never really thought he was interesting. Letterman – please. He just such an anachronism now. (But man – I loved the pencil throwing 80’s.)

Fox – please pick up Coco.

NBC – "You are who we thought you were!”

Written by Lynn Eriksen

January 14, 2010 at 6:45 pm

Asp.net MVC – HandleUnknownAction in Controller

with one comment

Sorry I have been away so long. Work has been very busy and I have been doing a lot of planning for new projects, reading, rebuilding the notebook and trying to endure winter. Needless to say I have been away for a while.

So … I have started to look in building MetaWeblog support into an MVC project and have found a dearth of examples. So after doing some reading, testing, reflectoring, etc. I have decided to role my own. “Why not?” I figure.

The first thing I tried was to create a basic MetaWeblog action model and custom model binder. The model binder (which was easy to make) worked, but it didn’t solve the big problem – I want to create individual methods for each MetaWeblog RPC, and that wouldn’t cut it. I considered making a filter, but that wouldn’t work either. So the the next thing was to try to hack the controller, and that seems to work nicely.

One of the things the MVC team has done a nice job is keeping the architecture of the MVC platform simple and open. I started using reflector to find an easy access point to inject a change to action method called and sure enough I found it the ‘HandleUnknownAction’ of the Controller class. I’ll show an example and then explain:

Code Snippet
  1. public class UnknownController : Controller
  2. {
  3.  
  4.     protected override void HandleUnknownAction(string actionName)
  5.     {
  6.         if (!String.IsNullOrEmpty(actionName))
  7.         {
  8.             //set unknown routevalue
  9.             ControllerContext.RouteData.Values["UnknownValue"] = DateTime.Now.ToString();
  10.  
  11.             if (this.ActionInvoker.InvokeAction(this.ControllerContext, "UnknownAction"))
  12.             {
  13.                 
  14.  
  15.  
  16.                 return;
  17.             }
  18.         }
  19.  
  20.         base.HandleUnknownAction(actionName);
  21.     }
  22.    
  23.  
  24.     public ActionResult UnknownAction([DefaultValue("")]String UnknownValue)
  25.     {
  26.         return Content(String.Format("UnknownAction: {0} : {1}", RouteData.Values["action"],UnknownValue));
  27.     }
  28.     
  29.  
  30. }

The highlights:

  • So for a simple test I just wanted to redirect the action of the ‘actionName’ parameter existed. And unless you change the route defaults it’s ‘index’ – so we are good here. (The base method of HandleUnkownAction is simple – it just throws an Http error. )
  • Next I injected an new route value keyed as ‘UnknownValue’ and this matches a parameter on the ‘UnknownAction’ method I am going to call. (Yes! It does bind!’)
  • Last we call the ‘InvokeAction’ method on the ActionInvoker property of the controller. Important: you must return if the of the InvokeAction method succeeds. And the rest just works as if your calling a normal action method.
  • The results are simple. Here is an example:
    UnknownAction: Index : 1/14/2010 12:54:53 AM

So I am thinking that this would be a good basis for creating a MetaWeblog API handler using basic MVC conventions. I’ll provide more information as I get further along.

Written by Lynn Eriksen

January 14, 2010 at 1:05 am

Posted in Uncategorized

Tagged with ,