Tuesday, September 20, 2005
Seen whales & dolphins. And 600m cliffs!

9/20/2005 1:23:14 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Monday, September 19, 2005
Visited active volcano 3850m

9/19/2005 5:53:30 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


TGF5aW5nIGJ5IHBvb2wsIGJlY29taW5nIHN1ZG9rdSBtYXN0ZXIuIEJlZW4gdG8gdm9sY2Fubywg YnJlYXRoLXRha2luZy4gVm9kYWZvbmUgc2lnbmFsIHBvb3IsIHdpbGwgcG9zdCBwaG90b3Mgc29v bg==

Laying by pool, becoming sudoku master. Been to volcano, breath-taking views. Vodafone signal poor, will post photos soon

9/19/2005 5:52:46 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Wednesday, September 14, 2005

I've just fixed several bugs in dasBlog that were preventing me from sending email via my phone (across Vodafone Live) direct to my blog. Vodafone were using non-standard casing in most of the email & attachment headers. Now I'm ready for my hols. Expect some pictures soon.

9/14/2005 11:24:58 PM (GMT Daylight Time, UTC+01:00)  #    Comments [1]  |  Trackback


I've been getting quite a few errors from dasBlog recently with invalid viewstate. After chatting with Scott Hanselman about possible causes, we've narrowed it down to two possiblities:

  1. someone is tampering with my site
  2. IIS is recycling whilst a postback occurs

The IIS recylcing sounds more likely, although I'm actually hosting this site on Windows 2000 with IIS5 which I didnt think recycled ever 20 minutes like IIS6.

Anyhow to rule that out I've set a manual machineKey for my dasBlog application: here's an example:

<machineKey  
validationKey="21F090935F6E49C2C797F69BBAAD8402ABD2EE0B667A8B44EA7DD4374267A75D7
               AD972A119482D15A4127461DB1DC347C1A63AE5F1CCFAACFF1B72A7F0A281B"           
decryptionKey="ABAA84D7EC4BB56D75D217CECFFB9628809BDB8BF91CFCD64568A145BE59719F"
validation="SHA1"
decryption="AES"
/>

That way if IIS does cycle during a request we should also use the same keys instead of getting new AutoGenerated ones. The same principle applys if you are using a web farm. Different servers might serve the inital request from the postbacks.

BTW: if you need to generate those keys above, here's some code:

using System;
using System.Text;
using System.Security;
using System.Security.Cryptography;

class App {
  static void Main(string[] argv) {
    int len = 128;
    if (argv.Length > 0)
      len = int.Parse(argv[0]);
    byte[] buff = new byte[len/2];
    RNGCryptoServiceProvider rng = new 
                            RNGCryptoServiceProvider();
    rng.GetBytes(buff);
    StringBuilder sb = new StringBuilder(len);
    for (int i=0; i<buff.Length; i++)
      sb.Append(string.Format("{0:X2}", buff[i]));
    Console.WriteLine(sb);
  }
}
9/14/2005 11:22:12 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


I think *all* developers could perhaps learn to be more honest with their end users. Take this example dialog from Microsoft Codename Max




But then again if sales & marketing didnt lie, we wouldnt need to?
9/14/2005 8:47:11 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Tuesday, September 13, 2005

Recently several people I know including myself have started to create mp3 mixes of their favourite tunes. This is great, however, being a mix you lose all the track information which is a shame, especially if you want to burn the mix to CD for playing in the car. Car players generally always start playing mp3 from the beginning - and boy I cant listen to the first track of my mixes any more.

Well here's a solution - there are many tools to do this, but this is what I use:

mp3cue - its a WinAmp plugin

Here's a cue file I created for my Summer Mix 02
mix02.cue (1.05 KB)

Off you go now and fireup your copy of Nero and burn away...

9/13/2005 7:42:23 PM (GMT Daylight Time, UTC+01:00)  #    Comments [1]  |  Trackback


Sunday, September 11, 2005

Next year a large slice of the British public is going to experience the next generation of the internet, courtesy of NTL Broadband. The speed of the new connections - 20 megabits per second (20Mbps) - is enough to stream high-definition TV (HDTV) straight from the net to a PC or television, without even having to download.

Last week NTL Broadband demonstrated 'streaming' high-definition TV over the new 20Mbps service. The BBC Proms came out crystal-clear in the not-so new HDTV format, which offers pictures four times sharper than ordinary digital TV. You could pick out expressions on the faces of people far back in the audience.

Even better, the new connection was able to manage this without sturrering or lagging.
Search giants like Google are already predicting that 'video search' is going to be the next big thing.

And with the race on to bring ever faster net connections to home users - people in Hong Kong can already get 100Mbps connections; in Hamburg and Stuttgart they can get 50Mbps - it looks certain that within two or three years, much of Britain's TV is going to be coming to us over the net.

The nightly TV schedule could be a thing of the past. With new fast connections, it could be possible to simply search for TV and films that you like, Google-style, and start watching what you want immediately.
On the Business web site there is even an article suggesting NTL may go straight to a 100Mbps service.

"Fibre can carry up to one gigabit,"
Keith Monserrat, NTL's director of policy said. "It will be relatively straightforward for NTL to provide speeds of at least 100 megabytes per second across its entire network. By contrast, BT's planned 21st Century network will not be able to deliver speeds above 10 megabytes."

Although NTL will not reveal the timing of the launch of its 100-megabyte service, Monserrat said NTL customers could expect to be offered the service "in the not too distant future".

NTL hopes to establish a market lead over other UK telecoms operators. Other UK internet service providers (ISPs) dispute the need for broadband services much faster than eight megabytes. But according to NTL, ISPs are rolling out 28 megabyte services in France and 20 megabytes services in The Netherlands.


9/11/2005 7:13:13 PM (GMT Daylight Time, UTC+01:00)  #    Comments [2]  |  Trackback


Friday, September 09, 2005

We had a new calf born on the field yesterday night, so far its doing really well after a some what difficult birth.








9/9/2005 5:43:38 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Thursday, September 08, 2005

If you value your privacy, especially when using P2P applications to must get yourself a copy of Peer Guardian 2. It uses a dynamic ip database to block known addresses from touching your machine. It is not a firewall but an ip blocker. You'll be amazed at who is snooping on your connection! Remember share, not steal.



9/8/2005 11:52:35 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


In a project I'm working on using ADOMD.NET there is some code that is throwing an exception when we try to serialize a adomd connection exception object. The error is show as:

Invalid cast from Microsoft.AnalysisServices.AdomdClient.ConnectionExceptionCause to Microsoft.AnalysisServices.AdomdClient.AdomdErrorCollection.

[InvalidCastException: Invalid cast from Microsoft.AnalysisServices.AdomdClient.ConnectionExceptionCause to Microsoft.AnalysisServices.AdomdClient.AdomdErrorCollection.] System.Convert.DefaultToType(IConvertible value, Type targetType, IFormatProvider provider) +1228 System.Enum.System.IConvertible.ToType(Type type, IFormatProvider provider) +9 System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider) +1097 System.Runtime.Serialization.FormatterConverter.Convert(Object value, Type type) +25 System.Runtime.Serialization.SerializationInfo.GetValue(String name, Type type) +148 Microsoft.AnalysisServices.AdomdClient.AdomdConnectionException..ctor(SerializationInfo info, StreamingContext context) +60

Using Reflector, there would appear to be a cast that is invalid in the constructor:

private AdomdConnectionException(SerializationInfo info, StreamingContext context) : base(info, context)
{
this.exceptionCause = ConnectionExceptionCause.Unspecified;
this.exceptionCause = (ConnectionExceptionCause) info.GetValue("ExceptionCauseProperty", typeof(AdomdErrorCollection));
}

Has anyone else seen this? Or have a workaround?


I've posted an article on an MSDN forum just in case someone from M$ spots it!

If you find this post via google hopefully someone has answer my questions.

9/8/2005 2:22:14 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


If you want to see a halo 2 pro at work, check out Orge in the attached video. 41 kills to nothing! Unfricking believable!
9/8/2005 8:07:51 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback

OGRE1_41-0.wmv (45.61 MB)

blogxercise: the act of exercising your mind by reading web logs.


9/8/2005 7:49:58 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


I'm thinking of getting this T-shirt.

I'll let the comments decide!
9/8/2005 7:47:11 AM (GMT Daylight Time, UTC+01:00)  #    Comments [3]  |  Trackback


Wednesday, September 07, 2005

Grab these great Halo 2 postcasts by Podtacular. Also worth a read 2old2play if your reaching that age!

More quality here by xboxmixradio. Not forgetting my favourite Halo 2 site of all time HBO



Buy the "Fight the Flood" T-Shirt and help raise money for the storm victims
9/7/2005 12:12:19 AM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Tuesday, September 06, 2005

I think most people realize that things like accurate aim and snake-fast reflexes sure are important, but that they aren’t the most important factor. Take two equally technically skilled players and the best one will be the one with the best strategy and tactics.

Check out What makes a great Halo 2 multiplayer gamer?
9/6/2005 10:00:43 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Mark your calendars - 19th September - International "Talk Like A Pirate" day.

check talklikeapirate.com for more details. Arrrrr! me hearties!
9/6/2005 9:57:42 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback


Configuration Objective: Create an IIS Site with its own Application Pool with that Application Pool's Identity being set to a local or domain user.  Not a problem...?

Service Unavailable

The specific steps which liberated me from the [worthless-and-why-can't-MS-give-a-clue-when-this-happens] “Service Unavailable” message were:

  1. Adding the user account to the IIS_WPG group of the server
  2. Give the IIS_WPG group Read & Execute, List Folder Contents, and Read permissions to the Web site directories

TechNet
9/6/2005 9:14:28 PM (GMT Daylight Time, UTC+01:00)  #    Comments [0]  |  Trackback