Ohad's Blog

Lets talk about .net !

Mirror at:
blogs.microsoft.co.il

News

         Ohad Israeli's Facebook profile

Grab this badge here!

C# Code Snippts

Favorite Blogs

Israeli .Net Bloggers

October 2008 - Posts

PDC 08 - Keynote - Day III - Microsoft Research - live blogging

Rick Rashid - Senior Vice President - Microsoft Research

IMG_0115 IMG_0114
IMG_0119 IMG_0120

PDC08 - Scott Gu !
IMG_0082 IMG_0087

IMG_0086  IMG_0089 IMG_0090

New WPF source Editor - based on MEF e.g. you can add new features to the editor

IMG_0092 IMG_0094 IMG_0093 IMG_0095 IMG_0096IMG_0098 IMG_0097

PDC08 - Second day keynote - cont II

So what's new with windows 7 ?

Ribbon User Interface
Jump Lists
Libraries
Multi-Touch, Ink, Speech
DirectX family

IMG_0077

Fundamentals:
Decrease: MEM, I/O, Power
Increase: Speed, Responsiveness, Scale

IMG_0078 

You can boot from VHD !!!

Multi mon now works also if you use remote desktop !!! e.g. you remote connect to a machine and will have dual mon support if youhave dual mon.

IMG_0080

Call to Actions: Developer for 64-Bit ! Evaluate new apis in windows 7

IMG_0081

PDC08 - Second day keynote - cont

PDC08 keynote is about to begin !

Hopefully it will be better then yesterday... Live blogging will start soon...

IMG_0052

IMG_0053 IMG_0055

Ray ozzy just started the second day Keynote

 IMG_0056IMG_0058

Today's keynote is about the UI, the experience... the client platform, os.. apps

Ray talks about joining the web & the client pc worlds.

Windows 7 - Best platform experience and innovation

Internet Explorer 8, Silverlight 2 - Making web apps offline, installable...

Starting the shows...

Steven Sinofsky - Windows 7

IMG_0059

The new windows explorer

IMG_0066 IMG_0065

New improvements with the network sharing wizard

IMG_0068

The new media player, you can send music to devices... photos to photo pictures etc...

 IMG_0069

Device stage shows everything i can do with the device

 IMG_0070 IMG_0071

Connecting to a printer will switch automatically from the home printer to the work printer.

Now its very easy to change your desktop.

 IMG_0072

Showing the HP multitouch !!!

IMG_0073 IMG_0075

Now to windows 7 and Windows Live Essentials & Services

 IMG_0076

PDC08 - Second day keynote

PDC08 keynote is about to begin !

Hopefully it will be better then yesterday... Live blogging will start soon...

IMG_0052

IMG_0053 IMG_0055

Ray ozzy just started the second day Keynote

 IMG_0056IMG_0058

Today's keynote is about the UI, the experience... the client platform, os.. apps

Ray talks about joining the web & the client pc worlds.

Windows 7 - Best platform experience and innovation

Internet Explorer 8, Silverlight 2 - Making web apps offline, installable...

Starting the shows...

Steven Sinofsky - Windows 7

IMG_0059

The new windows explorer

IMG_0066 IMG_0065

New improvements with the network sharing wizard

IMG_0068

PDC08 - Under the hood: Advances in the .NET Type System (Live Blogging)

Presenter : Misha Shneerson - Senior SDE - Microsoft

Agenda - Its all about COM interop
Solution - Type Embedding
Solution - Type Equivalence
Putting it all together - Loose type coupling and extensibility
Improvements in event handling for COM objects

Deployment of PIA (Primary interop assemblies) is a big issue.

SAy you have an Interop solution with office - Usercode assembly size (50kb) the interop assembly interop.excel.dll for example is 1.2MB

The problem is installation... we need to install office 2007 PIA redist - 6.3MB

Today: In order to deploy 50k we need to install 6.3MB !

If we are targeting office 14 we need to install office 14 PIA redist 6,3MB+...

COM Interop - There are some efficiency in interop assemblies - event support.
Managed to Managed - there might be file missing prob... as version do not match

Type Embedding - Get rid of interop assemblies to be embeded into the process
CLR 4.0 feature
Both C# & VB can pass ref to assembly via /link like /ref the compiler will look at the type and embed this type, all the information is now embeded into the assembly.

A new property in the prop managed of VS for assembly that we have ref which is Embed Interop = true

If we open the assembly in ildasm there will be 2 namespace the application one and an Microsoft.Office.Interop.Excel namespace the second one will include the types that have been pulled.
you will notice a _VtblGap1_X stubs the X is the number of slots to skip as the table due to the pull. (Methods not being embeded stack out by vtable gaps)

Limitation of what can be embeded:
only metadata - not il !
Interfaces must have comimport, guid attributes
we can embed delegates
we can embed simple structs
we can embed enums
but not classes or static methods !

Type Equivalence - Very easy to write addins with it ! - helps build a loosely coupled apps !

CLR 4.0
Interface with the same guid are treated by the LR as equivalent types
Casts to an equivalent interface
  CLR looks for Typeidentifier attribute to be presented on one for the interfaces

How does it work ? The clr walk the chain find the equivalence, very the signatures to see that they are matching and if they are the call with go through. (The CLR check that you are not doing unsafe calls)

Is it not heavy ? first time yes but the next time it will be cached.

When you write adding for com based app you can write against any version of host primary interop assembly - you embed local types using the /ink compiler switch

If you try to work against office 2007 and then try to work with the adding in office 2003 - the vtables are different so you will get an access violation exception.

Addins for managed hosts
apis are published as interfaces into "programmability" assembly.
Add-ins embed theses interfaces at compile time.

Is type safety a concern ?
it is possible to construct an interface that is type equivalent to another interface but which is completely incompatible with that interface.

casts to such an interface will succeed

The next version of the clr when you add a ref to interop assembly the embed switch will be automatically added

Samples will be available at Misha's blog

PrePDC - Together@PDC

Its night right now in LA, I've arrived to LA in the morning (7:45) after 15hr of direct flight...(it was a hard flight as i could not get an upgrade to business nor an exit seat...)

Two hours after I landed I've register to the Together@PDC , special event that was held for a specific group of attendees...so after some networking & lunch break we went to have some activities :-)

I choose to do the a two hours horse riding to the Hollywood sign at the top of LA.

IMG_0005  IMG_0007

IMG_0011 IMG_0010

 IMG_0021 IMG_0038

 IMG_0036 IMG_0039

During the Together@PDC we also received our first pdc freebies:

A locker for the laptop

and

A USB Hampshire (The faster that you type the faster he will run) - my doughtier would probably enjoy him very much back at home :-)

IMG_0045

So now everything is ready to get some sleep after two days and be ready for the real thing !

The PDC KEYNOTES. (more on that tomorrow)

PDC here I come :-)

Well I'm just on my way to the PDC... my session list is ready... the rest of the material too

The iPhone is full with 6gm of music and some games...

Now i also have the ppt of Glenn's MEF session so i even have some PDC stuff to read on my 15 hours direct flight to LA.

Yep some guys have long long long long flight to get to LA.

For anyone who is interested I'll keep on updating my blog and my twitter (http://twitter.com/ohadi) with details from the event.

So see you there !

More Posts