Friday, August 24, 2007

I just came across this interview on the INFO-Q website. I like how they do this. Short questions and answers. Each q/a has a video clip, where you can watch and listen to the subject of the interview and simultaneously read the text of the question and answer. That makes it really easy for me to paste these two tidbits.

Basiically he says LINQ to SQL is for simple database scenarios and EDM (Entity Data Model) is for very complex schemas and giant databases. Not earthshatteringly different than what are figuring out, but interesting to hear it from the guy who is credited for inventing LINQ. He's NOT comparing it to Entity Framework, since there's more to Entity Framework than the EDM that lies at it's core. Here is a post about Mike Pizzo comparing LINQ to SQL and Entity Framework directly.

What about DLINQ (aka LINQ to SQL)? 
DLINQ is and instance of LINQ over Relational Data, which is trying to address the simpler mapping scenarios. In DLINQ there are several ways to do this. You can point at your database and get your classes from the metadata and the database, you can put custom attributes on your classes, and define your mapping like that or you can use an external mapping file. DLINQ, like many other object relation mappings, has this notion of context, which is the bridge between the object world and the database world, that does the change tracking and holds the database context, and the transaction context and so on. Also this context will take your expression trees, translate them to SQL and then materialize your objects. DLINQ is one example of using LINQ to query against Relational Data.

Can you relate EDM into this discussion?
Yes, the EDM is designed for situations where you have really complicated schemas and giant databases, where your mapping scenarios are much more complex, where you want to do de-normalization, and where you want to map different tables to a single type or you want to have one table mapped to different types, or you have complicated implementations of inheritance. These are situations where you have really complicated enterprise applications, legacy applications, where simple direct one to one mapping doesn't fit.
 
Also interesting to hear him talk about what he's working now.
Friday, August 24, 2007 4:37:15 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

At DevConnections this fall, I'm going to do a post-con, 1/2 day workshop to provide some guidance over which Data Access options in .NET 3.5 are right for you now that we have MORE choices coming out.

Do you use classic ADO.NET? LINQ to SQL? Entity Framework? And if Entity Framework, do you use Entity SQL? LINQ to Entities? Entity Client?

More options should be liberating, but at first glance, it's a little daunting, which is why I am doing this session.

While the main conference will have a special Data Access track, and plenty of opportunities to learn about Entity Framework, LINQ to SQL and more, I think that a wrap-up session will be really helpful.

Because it's a post-con, it's an additional fee on top of the main conference - but only $199.

Be sure to check it out!

Friday, August 24, 2007 9:26:10 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I'm very excited about the Data Access track at DevConnections this fall.

Generally, people don't know what to do with data access sessions. Do they go into Visual Studio Connections? ASP Connections? SQL Server Connections? They belong everywhere! Whenever I'm submitting ADO.NEt talks for a conference I struggle with deciding which track to choose, because it belongs in most of them.

So we built a single track with nothing but Data Access talks and it's a rock start line-up!

You'll find the talks listed under the ASP Connections Sessions and the Visual Studio Connections Sessions (look for Microsoft Day Visual Studio section for the MS talks, and Data Access Track for the 3rd part speaker talks).

Thanks to all of the conference chairs, conference staff, speakers and folks on the Data Programmability Team at Microsoft who have helped bring this about.

Microsoft Day:

  • ADO.NET Entity Framework Designers
  • Data Modeling and Application Development with the ADO.NET Entity Framework and LINQ over Entities
  • Project Astoria: Data Services for the Web
  • Optimizing Online, Enabling Offline with SQL Server Compact and Sync Services for ADO.NET

Wed & Thursday

John Papa, author of the MSDN Magazine Data Points column

  • Unraveling the Entity Framework
  • Implementing the Entity Framework

Dino Esposito, All 'round .NET wizard

  • Typed DataSets, Linq-to-SQL, Linq-to-Entities: Data Design Patterns Do Matter

Don Kiely: Data & Security Guru

  • ADO.NET Performance Tips & Tricks

Kathleen Dollard: The Queen of CodeGen

  • ADO.NET Metadata and Code Generation

Bill Vaughn, The Legendary Bill Vaughn :-)

  • ADO.NET Connecting

Dave Sussman, Author of many ADO.NET & ASP.NET Books

  • Black Belt Data Binding (in ASP.NET)

Alex Homer, Partner in crime to the many ADO.NET & ASP.NET Books with Dave Sussman

  • Five Favorite Features in ADO.NET and SQL Client

Julie Lerman (moi)

  • Real World Entity Framework (looking at 3-tier patterns)
  • ADO.NET 3.5 Data Access Guidance (post conference 1/2 day workshop: 9-12am, add'l fee)
Friday, August 24, 2007 8:44:23 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Thursday, August 23, 2007

Chris Bowen has posted the agenda for the full day of free training aka "Bob & Chris' MSDN Roadshow" that will make Burlington it's first whistlestop on Sept 10th.

The day's topics are:

  1. Coding in a Dynamic World
  2. Practical Silverlight
  3. Developer Productivity Tips and Tricks for Visual Studio 2005 and 2008
  4. Software as a Service, Software + Services, Service with a Smile, Can I Get Some Service, Where is the Waiter?

More details about the day, the topics and registering are here on Chris' blog.

Also, don't forget to sign up for Code Camp 8: Rise of the Silverlight Surfer on the weekend of Sept 29/30. Submit abstracts for sessions or chalk talks and register. More details here...

Thursday, August 23, 2007 7:14:04 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

One of the many midwestern towns that has been impacted greatly by the flooding is Findlay Ohio. Here's a picture that is currently on the home page of CNN.com.

According to the latest CNN article:

Findlay, Ohio, was enduring its worst flood in nearly 100 years.

"This is the most widespread it's ever been," Findlay Mayor Tony Iriti told The Associated Press.

Findlay is a beautiful small city with a lot of glamour to it thanks to it being the home of Marathon Oil. It has a main street right out of the 1920's and a lot of charming homes from that era as well. Of course, it's also home to the Sugar Towers, which should be one of the wonders of the world!

I got to go to Findlay last fall on my Central Ohio INETA "tour" (3 groups in 3 nights) and just loved the town and totally enjoyed the attendees at the user group meeting.

I've emailed Gary Shank, the leader of Findlay.NET who is currently sitting in a remote office, but still in Ohio and still suffering from the sweltering heat and the floods, but hanging in there.

I wish them all the best and look forward to coming back to do another user group talk and to get some pictures of those Sugar Towers!!

Thursday, August 23, 2007 12:39:12 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [5]  | 
 Wednesday, August 22, 2007

Our resident garden snake has gone of for some growing and left behind his skin - right next to the garden. Something of an "I'll be back" message, I suspect. This year he (she?) was about 15" long. Rich is already teasing me about how BIG and scary he'll be next year!

Wednesday, August 22, 2007 7:19:49 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

At first glance, the new ImpliciltyTyped Local Variables in C#3.0 and VB9 might look familiar to VB programmers.

Earlier (that would be "current" as well) versions of VB can do a lot of implicit stuff. This has been a point of aggravation to many non-VB programmers, but I guess they have a new perspective. Next thing you know they'll be using declarative languages! Eek!

In VB2005, we can create an integer implicitly and do integer-like things with it.

  Dim ii = 5
  Console.WriteLine(ii + 2)

Or we can do the same with something more complex like a FileInfo class. I'm not explicitly declaring files, but VB infers it from what is returned by New DirectoryInfo.GetFiles (an array of FileInfo objects).

   Dim files = New IO.DirectoryInfo("C:\").GetFiles

We can even go a bit further with an iteration, using f to represent each FileInfo object without explicitly defining it.

   For Each f In files
       Console.WriteLine(f.FullName)
   Next

All of this runs just fine.

But, if you were actually typing this code, you would notice that the compiler does not comprehend the types at design time.

That's because it can't really identify the type at design time. All that's happening here is that we are getting late binding.

The undeclared f (FileInfo) doesn't even give you this much help with late binding. No method or property suggestions and it's just an object.

So here is where VB9 is definitely different. We are truly getting strong typing, not just the intelligence of late binding.

When using the implicit variables in VB9, the compiler is smarter and much more helpful!

In the For Each, f is now recognized as a FileInfo and gives intellisense as well.

Note that all of this is using the default VS2008 properties for Compiler Options. Jim Wooley has an interesting blog post about Option Infer (a new option) which allows the strong typing to occur.

VB
Wednesday, August 22, 2007 3:57:19 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

One week ago, I gave up on the Treo 700wx, gave up waiting for the "maybe in a few more months but we can't promise it" replies about Mobile6 phones and got a Blackberry. I like the Blackberry, really I do.

But now Verizon has a Motorola Q with Mobile 6 available.

I was only allowed one exchange, so I won't be playing with this. I'm sure I would have had the same issues that I had with the Treo, except for the lack of upgrade to Mobile6.

Wednesday, August 22, 2007 3:23:42 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Monday, August 20, 2007

Our friend Brian Berry is pedaling in the Paris Brest Paris ride that started today. It's a 1200km route that must be completed in 90 hours. That's about 750 miles in 3.75 days. That's about 200 miles per day. The ride is every 4 years. Brian has ridden it before, though I can't recall how many times. He  does a lot of long distance riding. In the past when Brian and his wife have come to visit, he generally leaves their home in Woodstock NY on his bike at about 2am and she drives up. It's about a 250 mile drive to where we lived the first time they did this. The second time, he slacked off and only road to Burlington - just 230 miles. That's about a normal day's ride for Brian. He thinks nothing of riding through the night with lamps. He's a nut.

Brian also often rides in the "BMB" (Boston Montreal  Boston ride) also 1200 km and goes almost right by our house.

RUSA (Randonneurs USA) also has lots of great info on PBP and the riders from the U.S.

Monday, August 20, 2007 2:45:30 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

“A Technical Community – How Do We Get There From Here?”
Dean Kamen
Tuesday, September 18, 2007
5:00 – 6:20 p.m.
Davis Auditorium
Medical Education Building on the University of Vermont Campus

Dean Kamen, an inventor and entrepreneur and an inspiring speaker, will address a serious issue facing society.

How can we attract the next generation to fields of Science and Technology? Society as a whole needs to start promoting careers in Science and Engineering to our youth.

We live in a technical world. Vermont, like many other states, is having a difficult time attracting and retaining a technical work force, which is essential for the growth of local businesses. If Vermont is to have a high quality of life 20 years from now, we need more skilled scientists and engineers, with a broad vision of the society we want to create.

Also - VT Science Teacher of the Year awards

MORE INFORMATION HERE

Monday, August 20, 2007 2:26:21 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Sunday, August 19, 2007

My Blackberry "locked up" today and I thought I was going crazy. I was suddenly and utterly unable to call out or use the browser. It told me "Cannot connect. Call in progress." I knew there was no call in progress. All other non-connection functionality was working perfectly well. I powered the phone down three times, but still I received this same message.

When I got home, I jumped online and very quickly found that, as luck would have it, this was a known problem with the Verizon Blackberry 8830. It happens if you are on a call and a another call comes in (which was my scenario). Some believe that if you avoid hitting the green dial/answer button to answer, that will prevent the problem from happening. Otherwise, a soft boot (Alt + Right Shift + Delete) or a hard boot (reseat the battery) should get you back to working order. I did the soft boot. However this is not a good long-term solution since people are having to do it repeatedly.

There is a particular thread on the Crackberry.com forums that has very recent posts on it where I learned all of this. The latest post (from only 2 days ago) suggests that just getting a replacement phone might do the trick.

Other than that, I'm really enjoying this phone.

Sunday, August 19, 2007 5:43:28 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [3]  | 
 Friday, August 17, 2007

Here's why

[A New DevLife Post]

Friday, August 17, 2007 10:13:12 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Thursday, August 16, 2007

New England Code Camp 8

Rise of the Silverlight Surfer

Saturday & Sunday, Sept 29-30 in Waltham, MA

It's free, it's fun and it is filled with great information!

If you have a story to tell, come tell it! You can do a regular presentation or a lead a chalk talk discussion. Prior experience not required!

Submit a talk or register as an attendee.

This is a FUN weekend and we should plan to have an big carpool from Vermont this time!

Read all about it here on Chris Bowen's weblog.

Thursday, August 16, 2007 8:28:51 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

Once again, we could not have asked for better weather for an evening cruise out on the lake! This was VTSDA's 2nd annual sunset cruise aboard the Spirit of the Ethan Allen from the Burlington waterfront. We had twice as many attendees as last year (60 this time). It was great to see our friends from the state there also, including some of our favorite Vermont Dept of Economic Development reps, James Candido and Mike Quinn as well Christine Werneke (Chief Marketing Officer for Vermont). These folks and others from the state have all become great supporters of VTSDA and it's definitely fun to have them at our social events, as well! A new face for us was Ted Brady, who is Sen. Leahy's field rep in Vermont. Though I've never personally met Sen. Leahy, Ted seems to represent him so well. He has a great presence, is quite affable and laid back, and can probably make sure things happen when push comes to shove.

Another special part of this event was that we got to introduce our new Executive Director, Patrick Martell, who started on Monday. It is a huge step for our organization to have gotten to this point. Read the press release here.

I was happy to have my pal Dave Burke there who I had emailed and said "hey, you are a software business, now, Dave. So you should come to this event!". 

The weather forecast looked iffy during the day but we had a beautiful night, a gorgeous sunset and spectacular views of the Adirondacks, the Green Mountains and the lake.

I didn't see anyone swimming away from the boat, so I think everyone had a great time.

Look for pictures on the VTSDA website coming soon.

Thursday, August 16, 2007 12:37:59 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 

When John Canning showed us his iPhone a few weeks ago and explained that he bought it in Boston after walking by the AT&T store too many times, we were all surprised at his risk-taking. AT&T doesn't provide service in Vermont and therefore we can't get iPhones here and certainly can't get an iPhone with an 802 area code. His has a Boston phone #.

You could tell he was in love with this phone. I had just gotten a Treo the day before so we were both showing off our phones to the small group we were with. I almost blogged about John's without naming names of course, but didn't want to get John in trouble. (Me, the paranoid rule-follower.)

So I had a good laugh today when I saw John's picture on the home page of Burlington's local paper, brandishing his iPhone. Hey, he outed himself; I had nothing to do with it. You can read about John and some of our wireless woes in the article.

So, I'm curious to see if (or is it "how quickly") John gets his service cancelled. The whole notion of AT&T having exclusive access to the iPhone seems wrong anyway. I understand it as a competitive marketing advantage, but it doesn't seem like good marketing to refuse entry to entire populations of your potential market. (Okay, i know Vermont is not a huge market, but...) I thought a key mantra for sales was about making it easy for people to give you money. But with the case of iPhones (it's the iPhone that John covets, not the AT&T service) users have to be wiling to use em and lose em.

I love that one of the comments on the article that"Vermont needs to get its head out of the sand." I don't know how these things work, but did Vermont explicitly ban AT&T?

Oh, and I traded my Treo in for a Blackberry yesterday (with a GSM chip). More on that later...

Thursday, August 16, 2007 8:11:10 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [1]  | 
 Wednesday, August 15, 2007

Thanks again to Richard Hale Shaw for driving up to Burlington on Monday (even a flat tire didn't stop him) to give VTdotNETters a very in-depth perspective on LINQ. Rather than just open up VS2008 and start pounding out LINQ queries, Richard spent most of the time building up our understanding of the underlying technology that makes LINQ possible. Custom Iterators, anonymous methods and generics. Then when he showed us LINQ, it made perfect sense.

I know that when I talk about "that which is returned by a LINQ query", I have a hard time saying "it's an iEnumerable" or "an iQueryable". Most people don't get what that means. Richard made it easy to understand by his initial desicription of an iEnumerable being a collection with only the enumerator exposed, so the only thing you can do to the collection is iterate over it. That will help me a lot when I do future talks about LINQ and Entity Framework (which is three of my four talks at DevConnections this fall).

In addition to Richard's generosity with his time and knowledge, big thanks to go telerik who made this meeting possible, covering Richard's travel expenses and our pizza, and providing raffles and lots of fun t-shirts. We also had a few great raffles, thanks to CodeZone.

Although I was wearing my new telerik "Geekette" t-shirt, there were only 2 other gals at the meeting. So when we were down to only one Geekette shirt at the end, I was surprised. Rather than take the regular guy t-shirts, the guys were taking the girlie shirts for their wives, girlfriends and daughters. Awesome!

Watch out for a gaggle of geekettes wandering around Burlington for the rest of this summer.

Wednesday, August 15, 2007 12:59:50 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
 Tuesday, August 14, 2007

Researchers at RPI are working on some pretty amazing battery technology! Read more...

[A new DevLife post]

Tuesday, August 14, 2007 9:18:35 PM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 
Tuesday, August 14, 2007 10:22:13 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  | 

I'm taking it back. Here's why.

[A New DevLife Post]

Tuesday, August 14, 2007 9:31:16 AM (Eastern Standard Time, UTC-05:00)  #     |  Comments [0]  |