Wednesday, November 07, 2007

FogBugz based on Event Bsed Scheduling

Fog Creek is currently demo-ing their new bug/task tracking system FogBugz.

Most of the systems which we currently see (for example Jira, Bug tracker) are based on the fact that they are good at reporting, maintaining and tracking (somewhat) bugs and tasks. That's it. The role of a bug/task tracker system usually ends there. (if you been making more use of a bug tracking/task management system, drop me an email).

There is where FogBugz is different from rest of the systems. Probably the most interesting part of FogBugz is Evidence-Based Scheduling, which uses a statistical technique called bootstrapping (a variation on Monte Carlo) to determine the probability that you'll ship on any given date. In short, this is how it works. You estimate features as usual. But then, instead of adding up all the developers estimates—instead of taking them on faith—FogBugz does a Monte Carlo simulation looking at what speeds developers worked at in the past, vis-à-vis their estimates.

In Joel's words:
Using that same distribution of probabilities that we had in the past and if we run a simulation of 60 futures each of which will occur with equal probability, what we get, instead of a date, is a probability distribution curve that shows the probability that the product will ship on such-and-such a date.

Now thats what i call an awesome sfotware tool, which really stands out. Well how reliable and accurate FogBugz is, is another question.

I think i got to try it to find out!!!

Tuesday, October 23, 2007

Facebook Developer Garage London October 2007

Ever wondered how you could create the next mega app for Facebook. Do you know what FBML is? Well i will tell you that. It is "Facebook Markup Language".

"Get wise and monetise"....This is the title for the upcoming Facebook developer Garage event in London on 24th October 2007.

I will be there and you should be there too!!!!

Network with other developers and entrepreneurs to create the next mega hit application. Your audience is the 40 million users on the world's most exciting web platform.

Speakers will include:

* Affiliate Window - Monetising Facebook Applications Through Affiliate Marketing (David Hall)* Paypal (Anthony Hicks) - How to take payments (and subscriptions) with Paypal for your Facebook App.
* M&C Saatchi (Speaker TBC) - Online advertising in the UKIn addition there will be two application showcases from garage developers.

You can get your tickets here:

Friday, October 12, 2007

Sapient to enter in Interactive media space in India

In London and NA we have been making rapid strides in the Interactive Media market for quite soem time, now its India's turn!!!

Our studios will synergise real-time work: Sandeep Dhar- Interviews-Opinion-The Economic Times

Tuesday, October 09, 2007

Silverlight video

Just got this off of Glenn Block's blog. Scott Hansleman posted a Silverlight video of Scott Guthrie demonstrating MVC to ALT.NET Crowd. See it here.

Monday, October 08, 2007


I tried Orcas (new version of visual studio) over the weekend. I really like the new interface. Though the interface is not drastically different, but its sleek look on Vista is awesome. Feature wise, there are quite a few, but one feature which i liked a lot is the ability to multi target. As i heard from scott guthrie, Orcas is the first version of Visual Studio that enables developers to target multiple versions of the .NET Framework. This means that you can open or create a project that explicitly targets either the .NET Framework 2.0, 3.0 and 3.5 releases, and Visual Studio will automatically filter intellisense, toolbox controls, and add reference dialog items (among other things) to only show those features supported within that specific version of the framework.

Then there are good C# features such as automatic property generation. So from now we do not need to write both private memebers and thier public properties. The compiler can automatically generate this for you!!!!!

Another feature which i ahvent tried much but read about is the object and collection initializers. Though i felt that isn't an Object Initializer already present in the language in the form of a constructor? I dont know yet, will have to dig deep to find out whats going on inside.

Saturday, September 15, 2007

Credit Crunch - Will this lead to recession?

Northern Rock the UK's fifth-largest mortgage lender, has asked The Bank of England to provide emergency financial support. This has made the Newcastle-based firm the highest-profile UK victim of the global credit crunch, triggered by the sub-prime mortgage crisis in the US. But the question is how many more to come? Following the widespread losses made by investors in loans to US homebuyers with poor credit history, the so-called sub-prime loans, banks and investors who have had their fingers burned have become wary of buying any mortgage debt.

As financial times stated: “When the patient is in seizure and the extremities are starting to turn blue it is not the time to worry about the patient’s longer-term dietary plans or about undesirable side-effects of the current treatment. Yet I fear this is what central banks will do. The next set of steps had better be convincing and decisive, otherwise a much wider financial implosion and economic recession will become very likely.”

How will it affect the jobs in the city? Will we see a slowdown? Lets wait and watch

Tuesday, September 11, 2007

Artificail Intelligence - Machines taking over?

Continuing from m earlier discussion about Artifical Intelligence, i found the following from one fo the technology writers who went to the Singularity Summit

Singularity Institute Research Fellow Eliezer Yudkowsky explained over the weekend at the Singularity Summit why many believe that machines will eventually be smarter than their makers. The stunning progress in packing more computation power onto silicon chips, married with software designers’ increasing ability to take advantage of this power, virtually guarantees that machines are progressing faster than humans are. One day, machines will start building themselves, he predicted. And at that point, humans will certainly no longer be the smartest creatures in the room.

All that conference goers could agree on is that life with machines won't be the same. And even if the machines that take over from the geeks are friendly, these new masters of the universe may not serve pinot noir.

Monday, September 10, 2007

Artificial Intelligence - Where are we heading to?

Recently the Singularity Summit was held in San Francisco and it was attended by record number of people.

I had been reading quite a lot on the Singularity Institute for Artificial Intelligence recently. The singularity institue exists to confront the new world of Artificial Intelligence, both the opportunity and the risk. I have been interested in this field since 2003, when i took a module on AI in my Computer Science degree and thus have my own views to share.

Do you think the machines can take over mankind someday? - Well currently i cant imagine something like that. However i can imagine computers taking over most of our jobs. People worry about competing for jobs with people from Mexico or from China, but what about competing with computers for jobs? People will be friends with robots who tend to understand them better than other humans!!! It will be robots who will make decisions as to when are we supposed to sleep, when are we supposed to eat and what are we supposed to like. Now that seems scary right. I think in 20 -25 years time we might also have the first Human-Robot relationship(partners/marriage). In short, robots will be good enough to replace humans for almost everything.

Robots are already to the level of rather dumb/stupid pets. Given moore's law, they will be to the level of smart pets within three to five years... That much is just simple exploitation of systems that have already been developed... This is such deep stuff, and there is so much of it that it will really take a human+ intelligence to fully use the data that we have now, much less the data that we will generate before we are able to create that human+ intelligence.

Tuesday, September 04, 2007

Increase in spam in gmail

In the last few weeks or so, I've noticed a marked increase in the number of spam emails that are making it into my Gmail. All are filtered to the spam folder though, but I still dont like it as the number has gone up sharply.

I used to get maximum of 3 to 4 spam mails in my spam folder in a week. However nowadays i receive 15-20 spam emails everyday. I dont know what is the reason behind this sudden increase or if others are also facing this situation recently. I tried searching on the internet but no related events have been reported by anybody.

One possible reason could be the fact that i registered on facebook around the same time and then suddenly i noticed the increase in spam. Is it something related to facebook? Are spammers getting hold of my email address from facebook? I wont be surprised actually as i have already started receiving job adverts/mails from agencies through facebook!!!

Let me know if anybody else faces the same situation.

Sunday, September 02, 2007

Tiger Beer Singapore Chilli Crab Festival - Bricklane

Today i went to the Tiger Beer Singapore Chilli Crab Festival at bricklane. I had heard so much about bricklane, but never been there. So i othught it was a good chance to go there.

I tried the Singapore's unofficial national dish (crabs!!! - you would have guessed by now), as well as other regional specialities such as Hainanese chicken rice, char kway teow and laksa.

You could even get henna tattoos there, watch Chinese dragon dancing and browse market stalls at this event organised by the Singapore Tourism Board.

Morveover walking around bricklane made me feel that it was quite similar to Camden Market. There were artists, musicians and lots of junk stuff being sold and bought. It was a nice expereince to see another aspect of life and ponder over it.

Still thinking about it actually.....

Friday, August 31, 2007

Sharapova's US Open wardrobe is inspired by New York's skyline

For 2007 U.S. Open Sharapova is wearing tennis dresses decorated with graphic interpretations of the cityscape on the chest.

The dress is a sleek garment made of a breathable wicking jersey and constructed with a no-sew technique with seams bonded with heat and silicone instead of thread.
There are more than 600 Swarovski crystals incorporated into the design, adding a little flash to the outfit, but Sharapova said it's simple and classy, which suits her taste. "I don't like things with too much pattern ... things that are tacky.''
There also are three crystal buttons down the back, creating a keyhole effect.

No thats a quality dress i reckon. By the way she is through to the third round as well.

Thursday, August 30, 2007

Behave# and NSpec - Behaviour Driven Development

I found something new today. I was reading casper's blog and came across Behave# and NSpec.

Behave# is a framework for defining and executing application requirement goals. These characterizations are modeled after the Behavioral Driven Design (BDD) terms Story, Scenario, Given, When, Then.

Behaviour Driven Development, or BDD, represents the evolution of current coding practices with respect to Test Driven Development (TDD).

One of the good points of behave# is that that if you want to specify Exceptions as part of your story, this forces you to move away from [ExpectedException]. Which is a Good Thing anyway.
It is quite verbose, although the verbose-ness is one of the qualities that could make it attractive to product owners or PMs. The code is really to express acceptance tests rather than developer-focused 'unit' tests. (Have a look of Behave# code example on casper's blog)

I think i am going to try a real world example and see how it goes or to put it more appropriately to see if it grows on me and how comfortable i feel.

Wednesday, August 29, 2007

Debugging Microsoft .NET 2.0 Applications Book

Today evening, i borrowed the book Debugging Microsoft .NET 2.0 Applications from a friend of mine. While iwas in the train heading home, i started reading the first chapter which is so meaningful in a programmers day to day life. The content of the book is very well organized and the flow of writing is just too good. It is a must read book.

On the first of page of first chapter i came across a few lines which really made me think how appropriate and improtant this book is for a progammer.

Quoting form the book Debugging Microsoft .NET 2.0 Applications:

"Debugging is also a part of software development that's famous for causing you to pull all-nighters. I'hv yet to run into an engineer who has called his or her partner to say, Honey, I can't come home because we're having so much fun doing our UML daigrams that we want to pull an all-nighter! However, I'hv run into plenty of engineers who have called their partner with the lament, Honey, I can't come home because we've run inot a whopper of a bug"

Well, I am sure any programmer (I mean a real programmer) would agree with this. Let me know what you all think

Google's gPhone

I have been hearing about Google's gPhone for over six months now but it was mostly speculation and hype by somebody on his blog or some avid google follower who thinks google is not only working on a gPhone, but also on an Operating System, a revolutionary gComputer and etc. etc.. list goes on.

However, the on again, off again offering to the mobile world by the search giant is reaching fanatical levels of hype and thanks to a recent news story by Rediff News in India, the hype is only getting worse. The story published by Rediff said that the gPhone is two weeks away from launch!!!! Now that is some serious speculation. Sources close to the development said a simultaneous launch across the US and Europe and India is expected, and announcements would be sent to media firms in India and other parts of the world in a week.

Well but all this is still simply a rumor, but a good one nevertheless. Lets wait and watch if google makes an official announcement. If they come out with a gPhone by any chance i am definitely going to get my hands on it asap, as i just love the way they make software.

Opps...aren't we talknig about hardware too over here!!!

Monday, August 27, 2007

.NET Stock Trader Application

Microsoft has created a sample online stock trading application to demo the securities industry that its Windows Communication Foundation (WCF) and .NET technologies can be used for high-performance applications within a service-oriented architecture. The application also offers full interoperability with J2EE and IBM Websphere sample application.

I am working as a Technology Consultant in capital markets domain and have noticed that microsoft technologies are still not popular and not the first choice as development tools for trading applications. However i think this sample application might open a few doors and show people the power and flexibilty of microsoft technologies.

The .NET stock trader application uses:
  • Service-oriented, n-tier design with ASP.NET and WCF.
  • NET 3.0 with Windows Communication Foundation.
  • .NET Enterprise Application Server Technologies.

Check it out here: .NET Stock Trader App

Monday, July 23, 2007

YouTube role grows as U.S. election nears

Candidate Forum on You Tube

Democratic U.S. presidential candidates (L-R) Hillary Clinton, John Edwards, Dennis Kucinich, Maurice Gravel, William Richardson, Barack Obama, Christopher Dodd and Joseph Biden take part in a candidates forum at the NAACP annual convention in Detroit, Michigan July 12, 2007. YouTube members are uploading video questions for upcoming CNN/YouTube debates.By yesterday evening, more than 1,700 videos had been put on YouTube's site for tnights debate among Democratic candidates. Now thats what i call Technology influencing Mankind.......or lets say influencing politics

Monday, July 02, 2007

IObjectReference interface.

Recently during my project i came across IObjectReference interface. We had a situation where we were serializing and deserializing an object. During this process, the object returned is the one which the serialized stream specifies. Here comes in the IObjectReference to save us!!!!It returns the real object that should be deserialized, rather than the object that the serialized stream specifies.

Here's an example showing how it can be used:

class S : IObjectReference
int i;
static S S5 = new S(5);
S(int i) { this.i = i; }
public static S Get(int i) { return (i == 5) ? S5 : new S(i); }

#region IObjectReference Members
public object GetRealObject(StreamingContext context)
return Get(i);

Thursday, June 21, 2007

Indexing by integer: Array vs List vs Dictionary

I really wanted to find out about the performance of an array as compared to a List and a dictionary.
So i just wrote something to check it. (See the results below:)

using System;
using System.Collections.Generic;
namespace ConsoleApplication1
class LookupPerformanceTest
static void Main(string[] args)
// ten million
int iterations = 10000000;
string[] array = new string[iterations];
List list = new List(iterations);
Dictionary dictionary = new Dictionary(iterations);
int now = Environment.TickCount;
for (int i = 0; i < now =" Environment.TickCount;" i =" 0;" now =" Environment.TickCount;" i =" 0;" now =" Environment.TickCount;" i =" 0;" s =" array[i];" now =" Environment.TickCount;" i =" 0;" s =" list[i];" now =" Environment.TickCount;" i =" 0;" s =" dictionary[i];">

Results (running in Release mode)
Array population took: 94ms
List population took: 141ms
Dictionary population took: 719ms
Array lookup took: 15ms
List lookup took: 32ms
Dictionary lookup took: 593ms

Tuesday, May 29, 2007

Team System Unit Tests and Deployment Items

Deployment files for unit tests

The files to be deployed with the tests have to be setup so that the tests can run successully on local machine and also on the build machine. Data files such as .cvs, .xml files etc. usually sits in the project directory along with everything all of the rest of my code files.

However the tests when run on the build machine fail because the files cannot be deployed to the "out" directory of the test results. I get a file IO exception – my .Xml file could not be located.

To make it work i had to do 2 things:

  • I select my data files in the solution explorer, and look at the properties window. I can then find the "Copy to Output Directory" setting and change it to "Copy always".

  • Secondly "DeploymentItem" attribute has to be applied to the items to be deployed other than the test assemblies.

You can use either absolute path or relative path to specify the location of the deployment files.

If you are using MSBuild and TeamCity for build, then you have to use a realtive path rather than the absolute path to make it work, because msbuild on the server uses relative paths as configured usually in the .build file.

To add a path for a deployment item please follow the following steps (as it is the easiet way to do so):

Select a test in the Test View window or in the Test Manager window.

Press F4.The Properties window for that test is displayed.

Click the Deployment Items property. An ellipsis (...) appears in the value column.

Click the ellipsis.The String Collection Editor dialog box is displayed.

Before the test is run, type a path to a folder or a file that you want to have copied to the test deployment folder. Press Enter and type additional paths to specify additional folders and files to be deployed.

Click OK.

Friday, May 18, 2007

Engadget's blunder

Yesterday Engadget posted that the iPhone was going to be delayed several months, relying on what turned out to be a bogus email for the story. Four billion dollars in market cap was wiped off of Apple’s stock price in six minutes as the “news” hit the market. Engadget quickly corrected the story and the stock recovered within twenty minutes, but many investors had lost a staggering amount of money in the amount of time it takes to brush your teeth!!!!

Thursday, May 10, 2007

Evaluating .NET/J2EE for your Enterprise Applications

Many orgnizations are currently considering and evaluating .NET and Java (J2EE) as their enterprise application development platform.
I found a very good site which contains extensive materials designed to help you evaluate Microsoft .NET vs. J2EE application server technologies. It contains downloadable whitepapers, benchmark comparisons, and sample source code.

Evaluating .NET vs. J2EE

Well I am sold on .NET for a long time now. I hope the link above helps to make your decision easier.

Thursday, May 03, 2007

Microsoft Silverlight launched

I know i am late by couple of days but still i want to mention, Microsoft has launched Silverlight. Silverlight provides compelling cross platform user experience. It creates richer, more compelling Web experiences that take greater advantage of the client for increased performance. It also delivers media experiences and rich interactive applications (RIAs) for the Web that incorporate video, animation, interactivity, and stunning user interfaces.

If you’ve got the time, I’d recommend (though i havent done it myself yet, but i wil be doing it today evening) watching the Mix keynote video (warning it’s 2.5 hours). In this you’ll get an overview of Silverlight, the cross platform CLR, ruby in the browser, and some very, very cool demos.

You can download silverlight from Microsoft site.

Wednesday, April 25, 2007

Asynchronous Programming Model - 2.0

I have been reading about the Asynchronous Programming Model in Jeffrey Rithcer's book CLR via C#. I have really enjoyed reading it and i thought of writing something about it.

The Asynchronous Programming Model (APM), as implemented by Delegates, consists of three parts:

- BeginInvoke,
- EndInvoke and
- Rendezvous techniques.

BeginInvoke starts an algorithm, impelmented via a method, on a new thread. EndInvoke retrieves the result of that method. The Rendezvous techniques allow you to determine when the asynchronous operation has completed.

There are three different types of Rendezvous techniques you can use to retrieve the results of an asynchronous delegate invocation

1. Wait Till Completion
2. Polling
3. Method Callback

Wait Till Completion
Wait-Till-Completion is implemented via EndInvoke. Calling this method will block the current thread until the results of the asynchronous method are available. This is the least effective method, because it eliminates all the benefits of APM.
private delegate string StringReturningDelegate();
private void Main()
// create an instance of the delegate pointing to a method that takes ten seconds to complete.
StringReturningDelegate fd = new StringReturningDelegate (MethodThatTakes10SecondsToComplete);
// Begin invocation of this delegate
IAsyncResult result = fd.BeginInvoke(null, null);
// Immediately call EndInvoke, which will block for, oh, say, right about ten seconds
string s = fd.EndInvoke(result);
// A method that takes 10 seconds, then returns a string private string.
return "Done!";
In this technique, you check a property of the IAsyncResult object called IsCompleted. This property will return false until the async operation has completed.

// a delegate for a method that takes no params and returns a string.
private delegate string StringReturningDelegate();
private void Main()
// create an instance of the delegate pointing to a method that takes ten seconds to complete
StringReturningDelegate fd = new StringReturningDelegate (MethodThatTakes10SecondsToComplete);
// Begin invocation of this delegate
IAsyncResult receipt = fd.BeginInvoke(null, null);
// Poll IsCompleted until it returns true; Sleep the current thread between checks to reduce CPU usage
while (!receipt.IsCompleted)
// wait half a sec
string result = fd.EndInvoke(receipt);
// A method that takes 10 seconds, then returns a string
private string MethodThatTakes10SecondsToComplete()
return "Done!";
Method Callback
In this technique, you pass a delegate to the BeginInvoke method that will be called when the asynchronous operation has completed. It will not block your execution, or waste any CPU cycles. This is the most effective emthod of Rendezvous.
//a delegate for a method that takes no params and returns a string.
private delegate string StringReturningDelegate();
private void Main()
// create an instance of the delegate pointing to a method that takes ten seconds to complete.
StringReturningDelegate fd = new StringReturningDelegate (MethodThatTakes10SecondsToComplete);
// Begin invocation of this delegate
fd.BeginInvoke(AsyncOpComplete, null);
// Do tons of work here. No, seriously.
/// /// Retrieves the results of MethodThatTakes10SecondsToComplete when called asynchronously/// ///
The IAsyncResult receipt.
private void AsyncOpComplete(IAsyncResult receipt)
// Cast to the actual object so that we can access the delegate
AsyncResult result = (AsyncResult)receipt;
// retrieve the calling delegate
StringReturningDelegate gsld = (StringReturningDelegate)result.AsyncDelegate;
// Retrieve our results; this is guaranteed not to block, as the async op is complete
string result = gsld.EndInvoke(receipt);
//write the result to the console
// A method that takes 10 seconds, then returns a string
private string MethodThatTakes10SecondsToComplete()
return "Done!";

Scientists break internet speed record

A group of researchers in the Internet2 consortium has set a new record for sending data through the Internet at more than nine gigabits per second.The team broke the old record of 7.67 Gbps, which was set last December. Using modified protocols, they were able to send data across a 20,000 mile path at a constant rate of 9.08 Gbps.At this speed, a high definition version of a movie could be downloaded in just a few seconds, instead of over 40 hours on a typical broadband connection.....

Tuesday, April 24, 2007

Google vs. Microsoft: reality check

I know google has been doing great work over the past year or two, but is it that Microsoft is out? I odnt think so. I came across Jobsblog and read quite a few intersting things. I have collected a few of those facts and here they are:

Why Google IS Afraid of Microsoft, Big Time

Microsoft pummels Google in the “In-Game Advertsing” space. How? Google buys a small San-Fran company to meet the challenge. Microsoft buys the world-leader in the industry for In-game advertising.
Microsoft delivers a solid uppercut in Voice-activated local directory assistance. How? Google announces an experimental service that may not be available at all times and may not work for all users. (Cute) Microsoft acquires TellMe Networks. Heard of them? Most likely, you’ve been using them for the longest time. Almost half of all directory assistance calls are processed on TellMe’s voice platform, and roughly one in three Americans use Tellme every year to get things done.

Assertion that Microsoft's 'Dead' Doesn't Compute
“When a software runs more than 90% of the desktops on the planet — and will for the foreseeable future — it's simply not dead.”“Windows runs on the vast majority of desktops in the world; Linux and OSX make up less than 10% combined”(Microsoft) “…earned $12.6 billion after taxes in its last fiscal year.

Well this article was written by a guy who currently works for Microsoft (you might have guessed that) and is an ex-googler

Thursday, March 08, 2007

I have been working recently quite extensively on ADO.NET and using data bindings. As we know ADO.NET work very well with DataSets and custom classes to create the entities to represent the data objects. We have decided to use custom classes for our application. We are using object data sources since we have created class entities. I got this piece of code from MSDN which shows a very nice way of using DataBinding. As we can see it is very easy to use and let me tell you from personal experience it is fast as well than using a normal dataset or xml for accessing data.

private void SetupBindings()
BindingList orderList =
new BindingList(Order.GetEntityList());
orderBindingSource.DataSource = orderList;
BindingList customerList =
new BindingList(Customer.GetEntityList());
customerBindingSource.DataSource = customerList;
BindingList empList =
new BindingList(Employee.GetEntityList());
employeeBindingSource.DataSource = empList;


Thus i reckon .NET winforms provide great support for databindings and it is one of the best options to use.

Wednesday, February 07, 2007

My new PC with Vista Ultimate

Yesterday, i got my shiny new Dell computer with "Windows Vista Ultimate". It is just awesome. It's quite alrite spec machine with Core 2Duo Processor (2.0 Ghz), 2 gig of ram and a 256 mb Nvidia turbocache graphics card.
Windows Vista Ultimate is surely ultimate. It is mind blowing. my favourite key is the windows key and tab, to show multiple windows. The gadgets are obviously cool.
I arranged a short "Windows Vista Launch Event in Croydon". It was nothing official, i just named it as such. My collegaues came over to my palce after work and played around with vista. Even non technical guys are coming today evenning to have a look. Everyone's welcome to come and have a look.....

Saturday, February 03, 2007

Creating custom cultures in .NET

Recently i have been using CultureAndRegionInfoBuilder class to create custom cultures in .NET.

With CultureAndRegionInfoBuilder class you can define a custom culture that is new or based on an existing culture and region. You can specify the culture and region information for example the associated language, sublanguage, country/region, calendar, and cultural conventions to great detail by using specific CultureInfo and RegionInfo classes. The custom culture can also be installed on a computer and subsequently used by any application running on that computer.

I highly recommend using this feature in .NET to create custom cultures for the application.

Wolfgang Loder's Blog

My previous Team Leader Wolfgang Loder has started his new blog. Its called "Loder on Software Development". He has immense software development experience and a great sense of humour too.

His recent entries are:

Video about Rails and Django
Rails - worth the trouble?
Multiple Inheritance with C#
Online Conference AJAX

Check out his blog at:

Do have a read guys and let him know how do you find his posts.

Friday, January 12, 2007

Windows Vista and Office Developer launch - Jan 19-20, 2007

Vista and Office launch time is fast approaching. They are giving FREE copies of Windows Vista and Office for UK developers. As far as i know, attendees to the physical launch will get a choice of either Windows Vista Ultimate, or Office Professional 2007 (but not both). These will be shipped to the attendee after the event. I just cant wait to get my hands on Vista Ultimate.