Jeremy D. Miller -- The Shade Tree Developer

Sponsors

The Lounge

Wicked Cool Jobs

Syndication

News

Advertisement

Images in this post missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at imagehelp@codebetter.com
A Train of Thought -- MVP Summit 2008 Edition

Just jotting down my notes from the MVP Summit (so I can get on with ALT.NET commentary).  I haven't seen anything revolutionary, but the conversations are always the best thing anyway. 

I'll sum up the entire summit in one word:  positive.  I thought that the interaction I saw with Microsoft was simply positive across the board.  Not perfect mind you, but I'm content.

Here's what I saw (no names and some specifics omitted for NDA compliance):

  • I'm still not thrilled with the Entity Framework and the direction they locked themselves into, but the EF team came prepared to talk about some compromises that might start pushing EF into the usable category for me.  I honestly wouldn't care about the EF, but I'll probably be back in consulting at some point in the next 5 years at a shop that will only use Microsoft tooling.
  • Daniel Simmons gets the "Thickest Skin of the Year" award.  Not the Hyperion/Endymion Dan Simmons though.
  • I enjoyed the IronRuby and IronPython talks
  • The Parallels extensions to .Net are intriguing, but I wish they'd shown more code and fewer slides
  • A version of the Open Spaces format was used for some of the MVP Summit.  It wasn't the real deal, but I'd say that it was an improvement.  I really appreciate the more interactive formats as opposed to passive watching the slides go by talks.
  • Getting asked for some real feedback.  Ayende & I got to see behind the curtains on some internal work in the .Net framework that I was pretty happy about.
  • I did hear about one thing in the works that has the potential for some community backlash, but they seemed to be interested in reaching out to defuse that backlash.
  • The language teams are very serious about ramping up the coding centric features in the Visual Studio IDE.  I know a lot of .Net developers think that Visual Studio is the greatest thing since sliced bread, but it's coding features badly lag Eclipse or IntelliJ from the Java world.  It's nice to see Microsoft starting to work on that gap.  I don't know if they'll do anything that isn't already in ReSharper, but I'm looking forward to seeing where they'll go.
  • Listening to no less than Brad Abrams say that they're taking testability into consideration on all .Net framework design now.  Cool.

 

 

What I want for Christmas from Redmond

  • IronRuby!  Even without Rails, I'd love to use RSpec for testing .Net code and writing specs.  DSL construction on the CLR, here we come!
  • I don't know if it'll ever catch on, but F# looks seriously cool
  • Transparent lazy loading in the Entity Framework.  If they want the Entity Framework to be usable in constructing rich Domain Models, they're going to have to do this. 
  • A hook in the Basic Class Library to make the choice of IoC container pluggable.  I think it makes a lot of sense for the .Net framework to have some sort of IoC container capability built into the framework, and you know they're going to do it at some point.  Acropolis needs it.  Prism needs it.  MVC needs it.  Heck, even plain jane WPF could use it.  Just please make it pluggable when you do that at some point in time.

Posted Wed, Apr 23 2008 8:04 AM by Jeremy D. Miller

[Advertisement]

Comments

Nate Kohari wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Wed, Apr 23 2008 9:10 AM

+1 for the integration of IoC fundamentals into the BCL. They gave Service Locator love, but no dependency injection. Just a hook into object activation so we could manipulate objects created with new would be great. Oh, and runtime-supported dynamic proxy support that doesn't use the remoting infrastructure!

Jeremy D. Miller wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Wed, Apr 23 2008 9:15 AM

@Nate,

As long as we can plug in NInject or StructureMap, I'll call that a success.  They're apparently planning some dynamic invocation support in .Net 4.0 for C#.  I heard the magic words "Missing Method" kicked around.

The object activation hook would be nice, but IronRuby solves that problem for me.

FransBouma wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Wed, Apr 23 2008 9:41 AM

@Nate: so a class loader facility ala Java? That is indeed something that's needed.

@Jeremy: Isn't lazy loading always 'transparent' ? (i.e.: it's loaded on the fly for you, without you doing anything else than accessing a property/navigating an association?)

Jeremy D. Miller wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Wed, Apr 23 2008 9:59 AM

@Frans,

The EF solution is:

Invoice myInvoice = get from EF here;

myInvoice.Details.Load();

foreach (InvoiceDetail detail in myInvoice.Details)

{

   // do stuff

}

I'm objecting to the explicit call to myInvoice.Details.Load().

In EF, the consumer of Invoice, and Invoice itself, would have to be aware that the Details child collection is lazy loaded and know to call Load() before iterating over the collection.

Jeremy D. Miller wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Wed, Apr 23 2008 10:00 AM

@Nate,

You could hack up the compiler like Greg Young does to get the object initializer ;-)

Ryan Lanciaux wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Wed, Apr 23 2008 11:42 AM

F# is seriously amazing -- I really hope it does catch on a bit more. I love how it's got a little bit of a dynamic feel to it but it's still statically compiled. Being built in to the next version of Visual Studio can't hurt it's popularity.

hyperion wrote hyperion
on Wed, Apr 23 2008 12:16 PM

Pingback from  hyperion

Charlie Calvert's Community Blog wrote Community Convergence XLIII
on Wed, Apr 23 2008 4:58 PM

Welcome to the forty-third issue of Community Convergence. The last few weeks have been consumed by the

FransBouma wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Thu, Apr 24 2008 4:05 AM

Jeremy: ah! That indeed figures.

It's a double edged sword though. There are a lot of teams who don't want certain groups to do implicit data loading (e.g. GUI developers) and always should call repositories, or bl classes. transparent lazy loading is then something you definitely don't want.

Sam Gentile wrote New and Notable 234
on Fri, Apr 25 2008 9:11 AM

I am having a blast on my latest gig which has me using many different technologies at the same time

acropolis wrote acropolis
on Mon, May 12 2008 8:07 AM

Pingback from  acropolis

Diego wrote re: A Train of Thought -- MVP Summit 2008 Edition
on Tue, May 13 2008 8:02 AM

Hopefully, you will find the experimental project on transparent lazing loading for EF interesting.

Diego's Blog : Lazy loading in Entity Framework wrote Diego's Blog : Lazy loading in Entity Framework
on Tue, May 13 2008 8:08 AM

Pingback from  Diego's Blog : Lazy loading in Entity Framework

centric tooling wrote centric tooling
on Tue, Jul 15 2008 3:58 PM

Pingback from  centric tooling

Sam Gentile's Blog wrote New and Notable 234
on Tue, Dec 2 2008 5:20 PM

I am having a blast on my latest gig which has me using many different technologies at the same time from Ent Lib/SAB/WAB to WCF to Nunit to Oracle and so on. I love it. ALT.NET/DDD/TDD Greg has altdotnet seattle session video He also has his 9th is his

Add a Comment

(required)  
(optional)
(required)  
Remember Me?
Devlicio.us