Silverlight 2 Beta 2 coming really soon

All signs points to Silverlight 2 beta 2 coming within the week:

http://blogs.msdn.com/swiss_dpe_team/archive/2008/06/03/silverlight-2-beta-2-available-later-this-week.aspx

http://msdn.technetweb3.orcsweb.com/maximelamure/archive/2008/06/03/new-features-annonced-in-silverlight-2-beta-2.aspx

The biggest news I can find:

  • "Pushing" data from Server to Silverlight:
    • this is a new duplex channel which implements a smart-pull, the client sends a request to the server but the server does not respond unless there's something to say, and the client will just happily wait on that request (Silverlight does have multi-threading). 
    • If this was implemented in AJAX we'd see the browser seems to be waiting for something (a waiting connection progress bar).
    • I guess when the client receives a response, it fires a new request to the server immediately and keep waiting for new messages.
    • Various people have chipped in that they feel this may be cleaner than working with sockets - may be they just didn't like the way sockets sound, perhaps too low level and not abstracted enough ;-)
  • A tab control!
    • Still no combo drop down?
    • Or trees
  • Commercial go-live license
  • Controls are in the runtime now, instead of being packed with your app
    • Bigger initial plugin download but smaller file?
    • I wonder why they don't allow the missing components to be downloaded from a signed-MS redistribution package when you need it, and have Silverlight install that on-demand.  (instead of putting it in isolated storage where it can't be shared with other apps).
    • Flex solutions pack controls into the swf file and no one seems to be complaining

Edit:

  • Sockets goes cross-domain

Doing a simple timeout page with WebClientApplication

<%@ Application Language="C#" Inherits="Microsoft.Practices.CompositeWeb.WebClientApplication" %>
<script Language="C#" RunAt="Server">

protected override void PrePageExecute(Page page)
{
// True when the current session was recreated with the current request
if (Session.IsNewSession)
{
// redirect if the requested page is not Default or the Timeout page
// or if the request method isn't GET
if ((!(page is Retail.Web._Default) &&
!(page is Retail.Web.Errors.Timeout)) ||
Request.HttpMethod != "GET")
{
Response.Redirect("~/Errors/Timeout.aspx");
return;
}
}
base.PrePageExecute(page);
}
 



This approach relies on the Session.IsNewSession property to tell us if the current session was created with the current request, with a bit of convenience support for the timeout/default pages.


Nikhil has a more detailed solution: Detecting Session Timeout in ASP.NET 2.0 Web Applications if you want to differentiate between



  • new session object and user was really new, (aka no ASP.NET_SessionId)

vs



  • new session object and the user really timed out (aka sorry I was surfing the web and the app timed out)

GMail getting slower and sloowweerr

There could literally be thousands of reasons for why GMail seems to be running slower and slower for me:

  • FireFox Extensions?
    • I use FireBug (which Google has told me to switch off)
    • I use GreaseMonkey
    • I use the Web Developer AddOn
  • Network connection?
    • The firewall behaves funnily at work
  • Too many processes running?
    • Doesn't explain why other websites run fine though.
  • FireFox default caching mode?

The thing is, it really shouldn't be "my problem" to work out what's wrong with GMail.  As far as I'm concerned, other websites continue to work fine, and if I switch to the basic GMail view, it works fine too.  So there must be something wrong with the standard version of GMail.

 

Which really got me to think about the whole connection between web and PC.

I use GMail because:

  • Lots of space - but that's hardly new now - everybody is out there throwing hard-drive spaces at you
  • Can use everywhere, simple and fast - again I'm not so sure about the speed anymore
  • Easy to get my centralized data out - this turned out to be a bit of a false impression.  It is difficult to get data out of Google.  May be there will be new Google API eventually, I can only hope.

I use an offline mail program (like Windows Live Mail) because:

  • Offline reading, if mail server is down I don't lose access to my mail
  • Composing experience offline is better, GMail with its auto-save and FireFox's build-in dictionary comes pretty close though
  • Stripping advertising
  • Combines blog reader, podcast and videocast facilities - which I can then synchronize to a portable player
  • Speed of browsing emails, waiting for an webpage to load is silly

You would think Microsoft should theoretically have an advantage with their desktop/web integration strategy, I'm just not sure why it hasn't been executed (or received favourably) yet.

Laptop has three vertical lines now

Looks like my Dell Inspiron is really heading for the trash can.

Dell customer care has got back to me with some model numbers that the out of warranty replacement covers, unfortunately the bad news for me, my LCD isn't one of those part numbers.

Not sure where to go now:

  • Get the parts and replace the LCD screen myself
  • Purchase extended Dell warranty (feels a bit like getting blackmailed?)
  • Throw the laptop off my level 14 building (I'm sure this would be illegal in most places)
  • Purchase a new laptop
    • Dell again?
    • Or another brand...