Retrospective of PDC 2008 [From my view]
This happens to be the first PDC for me. This year a lot of new technologies has been unveiled during the keynotes. One of the most focused is the Windows Azure. This happens to be the one stop shop for building and deploying your service oriented application from local to remote. We all know how slow it is to build service oriented application these days and Windows Azure is just the right tool that can make life easier over the course of time. There is a breakout session by Steve Mark that you might like to checkout if you have missed it. The session is a starting point for setting up your first Windows Azure app and it also shows a way to work with Asp.net MVC for things like uploading photos. Also, I found that you can use Azure for building async based queue service easily with asp.net.
Secondly , with C# 4.0 one of the cool feature that I found is the dynamic keyword. Let's say you have the following simple class
public class Math { public int Add (int x, int y) { return x + y; } public float Add (float x, float y) { return x + y; } }
Now , as you can see there are two overloads for Add. One is with int and another with float. With the current C# 3.5 (for non generic classes) you need to do
Math math = new Math(); Type mType = math.GetType(); object result = mType.InvokeMember("Add", BindingFlags.InvokeMethod, null, math, new object[] {10, 20}); object resultFloat = mType.InvokeMember("Add", BindingFlags.InvokeMethod, null, math, new object[] { 10.5f, 20f }); Console.WriteLine(result); Console.WriteLine(resultFloat);
Which of course the only way to call float and int overload depending on value type with existing solution. But with C# 4.0 you can also do the following
dynamic math= new Math();
Console.WriteLine (math.Add (10, 20));
Console.WriteLine (math.Add (10.5f, 20f));
As we can see that no invoke method or generics is ever required to call overloads with different type.You can find more interesting stuffs on C# 4.0 from the cool session by Anders Hejlsberg, if you at any chance missed it.
PDC 2008 is the event for windows 7. It is supplied to all the attendees with the 160GB mobile hard-drive and of course as a DVC copy. The most cool thing is to be able to add vhds as logical drives and being able to set them as primary drive to boot in native mode. Most of the feature shown in the PDC keynotes are by default in protected mode, so you might need to do tweaks for it.
Finally, "M" is the language for defining your domain model and "Quadrant" is a nice tool that harnesses the "M" to design and persist complex domain model visually. Together they are the "Oslo" project. Try the three parts session from microsoftPdc dot com.
In the end, with Microsoft Surface setup in different places of the convention center with people participating in "Scavenger Hunt" challenge, cool product showcase by various players at Microsoft ecosystem and PDC dinner at Universal Studios really made things rocking. May be next PDC will be even more exciting with beta products coming out to life ;).