Monthly Archives: March 2008

Writing Style: Me, Myself and I?

In my blog, I write as though I am just talking and the words me, myself and I appear quite a lot.

When writing technical articles, my editors constantly have to battle the “me myself and I” becuase the article is not supposed to be a story about me. Though I really do like to share those “man, this thing was killing me until I figured out x y and z” type of anecdotal lessons.

As I am writing my book, I have been extremely careful to make the book be about YOU, the reader. Even though I desparatley want to hold your hand and lead the way, I try to be consistent with YOU and even avoid WE as in “and now we’re going to do this”. It takes a lot of thought to figure out how to do this without being completely impersonal because that would just not be me.

Occasionally I have written essays for CoDe Magazine’s MVP Corner and I have an upcoming “End Bracket” essay in MSDN Magazine. These essays are where I get to write about me, myself and I as much as I want. Yay.

I just happened to come across a comment on a recent MVP Corner essay called Meeting Bill Gates. The comment said “Because it’s natural, I had a feeling like Julia Lerman talks face to face with me. Nice”

I just love that comment because this is the way I truly love to write.

Hudson Valley Software Summit in Planning

I used to live in NY State’s Hudson Valley and am always interested in what’s going on there with the software community.

Some folks I know are beginning to plan for a summit to bring together software people from around the region.

They have a website with a survey (on the registration page) to help with planning the summit.

Hudson Valley Software Summit

Here is a copy of the overview on the home page:

The goal of the Hudson Valley Software Summit (HVSS) is to encourage technological innovation in the region. The area is richly endowed with creative people, many of them software developers and entrepreneurs.

The HVSS is an opportunity for these folks to network with each other and to showcase their work for others outside the immediate community, such as potentially interested parties in New York City, Northern New Jersey, Albany, and Boston.Those for whom this event is a must attend occasion include:

  • Venture capital firms
  • Technology firms
  • Internet service providers
  • Private equity firms
  • VC-backed portfolio companies
  • Angel investors
  • Professional service providers

Who work in the fields of:

  • Biotechnology
  • Communications
  • Computers
  • Internet
  • Medical
  • Peripherals
  • Semiconductors
  • Semiconductor equipment
  • Software

MSDN Forum restructuring for Data Access (LINQ and Entity Framework)

The MSDN forums for data access have been restructured a little.

Entity Framework & LINQ to Entities questions:

The one which has always been under “MSDN Forums » Visual Studio 2008 (Pre-release) » ADO.NET (Pre-release)” has been renamed to MSDN Forums » Visual Studio 2008 (Pre-release) » ADO.NET Entity Framework and LINQ to Entities (Pre-release). It’s still pre-release, of course.

LINQ (Released)

While there is still a general LINQ forum under MSDN Forums » Visual Studio 2008 (Pre-release) » LINQ Project General  (Yes, under Pre-Release. I imagine they don’t want to lose the content or confuse people by moving the forum), the LINQ “flavors” have now been split up and are in the “Data Platform Development” section.

MSDN Forums » Data Platform Development » LINQ to SQL  
MSDN Forums » Data Platform Development » ADO.NET DataSet (This includes LINQ to DataSet)
MSDN Forums » Data Platform Development » XML and the .NET Framework   (This includes LINQ to XML)
 
Regular ADO.NET (aka “Classic”)

1) The above linked ADO.NET DataSet forum is the place to go for all things DataSet.
2) MSDN Forums » Data Platform Development » ADO.NET Data Providers  
“Data platform development using classic ADO.NET (v 1.1 and 2.0) and System.Data namespace.”

EFExtensions and stored procs with shaped results

EFExtensions , released on CodeGallery earlier this week by EF team member, Colin Meek, has a lot of brainy goo in it. So far I’ve looked at the pieces that Colin has explained in his first post (first post ever) about the Extensions. While most of the extensions in the first part of his post are replicating what Object Services does, the last chunk displays the real benefit of having them at hand.

EF Function Imports can handle READ stored procedures that return existing entity sets. At first I was looking at the extensions to see if they can return random objects, but I haven’t seen that yet however there’s a lot to look at still. (I’m picturing a generic method that reads the columns and creates an anonymous type on the fly rather than having to go through all of the mucking with the model to make this work. Of course, this is for read-only results.)

What Colin’s post shows, however is sprocs that return shaped results. A standard function import can’t do this…it needs to map to a single entity type.

So by combining a few of his extensions, he is able to extract the different types from the shaped results and mimic the object materialization that happens under the covers in expected scenarios. Additionally, he is able to add these entities manually into the change tracker.

It’s pretty sweet and what’s funny to me is that I was trying to do something very similar to this on the same day that Colin released the extensions. I had seen them pop into Code Gallery, made a mental note and a quick blog post without digging into them yet, then a few hours later asked on the forums, “Any way to grab sets of (unrelated) entities in one database call? “. Small world, eh? Now that I have a better understanding of some of the extensions, I will have to go back and see if this does the trick.

Writing a book means – just like they all said…

Yep… no life.

Except for a few hours out to ski in the woods on Tuesday, I have literally been working from after breakfast to bedtime every day. I have basically been on this new schedule for a few months now and it is really unusual for me to be so focused.

Everyone warned me it would be like this.

It gets to the point where you just can’t invent time and don’t know what else to do but keep working until you just can’t any more. One thing I won’t do (and am not physically capable of doing) is cut back on my sleep.

I am definitely impressed that I can focus this well and be so driven. I just wish the pages would churn out more quickly.

When Michele Leroux Bustamante was writing Learning WCF, she told me that she felt she learned WCF at a depth which she never would have achieved if it hadn’t been for the “exercise” of writing the book. I totally understand this now. Before I started, there were things that I knew well about Entity Framework, things that I had heard of but hadn’t played with yet, things that I kinda knew but not really and obviously lots of things that I had no clue at all about.

So the first item in that list is easy to write about. Everything else is belaboured as I cannot bear to write a sentence unless I’m 150% sure of its accuracy.

I have had (rare) days where I wrote 20+ pages. On the other hand there have also been days (thankfully these are also rare) on which, if it weren’t for screen shots, I managed to produce only 4 pages over the course of 12  hours. I have spent so much time turning over every stone, every pebble and every grain of sand in between.

It is definitely an amazing process.

The strangest and most unexpected thing is that I have actually lost weight because I’m not lingering in the kitchen or running upstairs for snacks. Or for that matter going to the store. Rich is away for a few days and the fridge is running low. I just eat what I can find and get back to work. If nothing else, I can always be grateful for losing a few pounds. 😉 Good thing I started out with plenty of extra.

And like they say about the Army, it’s not a job (at least not a paying one), it’s an adventure.

TechEd BOF Session: Entity Framework – Is it right for you applications? (need votes)

Is Entity Framework right for your Applications? You’ll probably want to answer this question before you start digging in deeply to learn this new data access platform that will be released very soon. Does it fit into my architecture? Will my DBA allow it? How will it play with my existing solutions? This BOF is intended as an interactive discussion where there will be plenty of experts in the room to get you started with some important decision making.

It won’t happen unless it gets voted for so go vote!

TechEd Birds of a Feather Session: Going Solo (please vote)

About 3 years ago I moderated a session at PDC (or was it TechEd, I can’t even remember :-)) called Going Solo. The room was literally overflowing into the hallway and it was a great discussion. Steve Smith and I are hoping to host a repeat at TechEd this year but we can’t do it unless you vote for it.

Going Solo
Have you ever thought of going independent? This session aims to bring together independent developers with those who have toyed with the idea to share advice, lessons learned and more.

VOTE HERE!

EF Stored procedures – one day, two posts

Roger Jennings wrote a dizzying (in a good way) post about stored procedures that I have not even had the chance to absorb yet but it’s about creating database procedures after the fact that can be easily used with the entities and associations defined in your model.

Coincidentally, Noam Ben-Ami wrote a lengthy post on teh ADO.NET Team blog about using the designer to leverage DML stored procedures that already map directly to entities defined in teh CSDL, while the stored procedures might do perform additional functions, such as time-stamp checking. Stored Procedure Mapping

If you like good old-fashioned Jewish humor…

…then this piece, Screams, in the current New Yorker is for you. Be a fly on the wall when a bunch of old Jewish comedians gather to celebrate a book of their caricatures..

The Milton Berle Room at the Friars Club was the scene the other day of a party for Drew Friedman’s “More Old Jewish Comedians,” a sequel to “Old Jewish Comedians,” collected caricatures of such revered icons, now gone, as Myron Cohen, Groucho, Buddy Hackett, Burns, Benny, et al., along with Friars present and still carrying on. [more…]

Warning Label: Reading this article while consuming liquids may cause said liquids to eject from your nostrils.

Hallelujah – Entity Graphs will be XML serializable

In the EF forums, Danny Simmons lets an EF RTM cat out of the bag.

And, this looks like it has the possibility to be bigger than just for EF. The EF team worked with the WCF team to make ENTIRE GRAPHS serializable, and in an interoperable way. If you look at Ruurd Boeke’s blog post,Circular references with WCF: solved a different way, about how he  achieved this, you can see examples of how WCF serialized entities before (non-interoperable) and after his own tweaks. Ruurd has been thinking about this problem for a long time, not just for EF, but for WCF in general, because it’s the way that WCF serializes that causes the problem.

So the question is, did they just implement this specifically for EF, or will this have a broader impact? We’ll see when the next CTP (as per Danny’s comment, he says CTP not Beta4) of EF comes out.