in
Forums
Blogs
Files
Devexpress.Com
ClientCenter
Support Center
DevExpress Channel

Gary's Blog

XPO Will Benefit from the Entity Framework

Yesterday, as I was pondering the internals of the XAF model for my ongoing localization project, I received an email from the Microsoft Community Leaders mailing list informing me that the Entity Framework will ship as part of Visual Studio 2008 SP1 later this year. Now - as you ponder which is the more disturbing part of that sentence, the fact that I’m a community leader in Scotland or the fact that the Entity Framework is soon to be released into the wild – let me tell you that, around the same time as I received that email, I was listening to a podcast where a group of well known developers were discussing the Entity Framework.

Whilst discussing it’s short comings, those developers were traveling a well worn path. Those of us with an interest in the ORM tool space (and hopefully that is everyone reading this blog) are well aware of the areas in which this first release version of the Entity Framework will fall short, namely:  focusing on the data aspects of the entity at the expense of the behavioral aspects; the excess code developers will have to write in order to cope with the poor decisions taken by the team around the lazy loading of associated entities; the Entity Framework’s view of a shared model which flies in the face of best practice and other such failings that we need not dredge up here.

However, the most interesting point made in the podcast and the one I am echoing here in this blog post, was that the release of the Entity Framework this summer is to be broadly welcomed amongst vendors and consumers of ORM tools. Why is that you ask, when the framework falls so obviously short of the required mark? Well it is a sad fact of life that many companies and many individual developers too for that matter, will not contemplate looking at a new architectural paradigm until such time as it appears on the Microsoft development stack. Whist there are those of us who are happy to inhabit the world of XPO, NHibernate and other ORM tools, it remains a sad fact that we, ladies and gentlemen, are very much in the minority.

With the release of Visual Studio 2008 SP1 this summer, that is all about to change, an ORM tool (albeit a flawed one) will then become a first class citizen in the Microsoft development stack. That fact will open up the world of ORM to many more people, and as those people explore that new world many will drift to XPO and other ORM tools, making 2009, in my opinion, a great year to be in the ORM space. We think XPO is a great ORM tool and we look forward to welcoming all the new users that the Entity Framework will introduce us to.

Digg This
Published Aug 01 2008, 11:28 AM by Gary Short (Developer Express)
Filed under:
Technorati tags: XPO

Comments

 

Jonas Follesø said:

Totally  agree.

The "signal effect" of having two ORM tools (LINQ to SQL and EF) from Microsoft is going to make it easier to adopt competing alternatives like nHibernate (or XPO).

The same is true for other areas as well. F# might get people to seriously start thinking about the right language for the job. IronRuby and IronPython might make it easier to look at Django or Rails. Uniti will make more people adopt dependency injection etc.

So yes, even though it might be flawety, it welcomme a CRM from MS.

August 1, 2008 6:34 AM
 

Gary Short said:

Hi Jonas,

Thanks for stopping by. I like the term "signal effect", I think I'm going to steal it. :-)

August 1, 2008 6:47 AM
 

Entity Framework and ORM Tools « garyshort.org said:

Pingback from  Entity Framework and ORM Tools « garyshort.org

August 1, 2008 7:08 AM
 

Dan Arnold said:

I hope you are right. XPO is fun to use, and I hope that as more people gravitate to it. I have always wished that you could take the best of NHibernate and the best of XPO and have a very good ORM.

Persistence ignorance in XPO would be a welcomed feature.

I think you have a great point here about EF falling short. The only hitch I see is that I don't think itsthat easy to find XPO when you are looking at the .net ORM market, and when you do, the documentation is so obfuscated that I almost dropped it on the first project I used it on.

Of coarse I didn't, and now I am through the learning curve, for the most part.

I thinnk to draw new customers to your products, you need documents, that truthfully represent the feature set, including the limitations.

Last thought. I think your linq implementation needs to mature to interest .net EF programmers. At this point while it works, the aspects of linq that are implemented verse those that are not is undocumented. Although XPOdoes not have Persistence ignorance, it does have Documentation ignorance. It deserves better, its a nice cheap and well supported ORM.

August 1, 2008 7:47 AM
 

Andreas Grabmüller said:

While I like XPO, it shares a (for me) major flaw with EF - it's 2-tier only. I think you really should make sure you move in that direction before EF does or you could be on the loosing side...

My personal opinion of course ;)

August 1, 2008 8:18 AM
 

Nate Laff said:

That's funny, because i'm moving AWAY from XPO to go to EF. Though, DX will never see a difference from me, as I will continue to subscribe to Universal.

Why? Wcf. Period.

Andreas, you're wrong. Sorry, no way to sugar coat that one :) EF fits in perfectly with a 3-tier architecture.

August 1, 2008 9:34 AM
 

Andreas Grabmüller said:

Really? It's been quite a while since I looked into EF.

I'm currently using a third party framework that handles ORM, object level security, caching and offline usage and so on. I was always hoping XPO would start going in that direction now that it's based on XAF, but if EF can do that now, I'll have to look into it again.

August 1, 2008 11:33 AM
 

Sigurd Decroos said:

Andreas, could you tell me what framework you're using? I'm very interested in the best 'overall' framework for WinForms, WebForms, WebServices, Synchronisation support, Mobile Devices support, ... Any1?

August 1, 2008 10:08 PM
 

Rollie Claro said:

Andreas, EF is not 2-tier.

we've been using EF since november last year. in fact we are  writting a provider for a particular database not supported by EF. EF? it rocks!

i encountered some issues with DevEx controls like the grids and the bindables' when you integrate it with EF.

EF? XPO killer! look out

XPO has to come up with a visual design diagram. no matter what we say, "drag and drop developers" consumes 75% of the market.

XPO has to implement LINQ if it wants to fit in the band wagon.

EF Rocks!

August 2, 2008 4:16 AM
 

Gary Short said:

Hello Rollie,

I'm not sure your comment is serious or whether it is tongue in cheek, but I'll assume you are serious and reply accordingly.

Firstly you say XPO needs to have a visual front end. Really? Well I'm not the XPO PM ( and if I'm wrong I'm sure he'll correct me) but I feel confident in saying that XPO will not have a visual front end? Why? Well becuase the the ORM community is in agreement that the visual front end to EF is one of it's weaknesses. Sure if you drag on a Customer and his Order and it's OrderLineItems everything looks lovely, but how many projects have you worked on where the problem domain only had 6 or 7 entities? Me? I've never worked on a project with so few entities and when you start to add more the interface quickly becomes so cluttered as to be useless.

As for EF's other shortcomings I don't really have to enumerate them here do I? EF is good for us because it opens up ORM to the masses, but it is far form a good implementation itself and is certainly no XPO killer.

Regards,

Gary

August 2, 2008 8:20 AM
 

Alex Hoffman said:

@Rollie

All ORMs have virtues, sweet-spots and ideal contexts and scenarious.  For me, XPO will continue to offer the fastest way to reliable and effective real-world solutions for a *class* of projects I'm involved with.

I'm not interested in chasing silver-bullet solutions that promise to be all things to all men (and women), I'm interested in applying the appropriate solution to a project's particular requirements.

The thing about XPO, is that I continue to be suprised at just how many varied projects it can be well suited to.

-- Alex

August 2, 2008 7:19 PM
 

Sigurd Decroos said:

Hey all,

If webservices would be easier to implement (or a much better example is provided), I would try it out in a deeper way. For the moment, I'm more looking to complete Win & WebForms generators, but as usual, the customizablility is a big problem...

Greetings,

Sigurd

August 2, 2008 8:40 PM
 

Nate Laff said:

Gary,

Here is the thing, though. Rollie was serious, and instead of blow each point off, there have been two people in this thread (Rollie, and myself) who were using XPO and are moving towards Entity Framework.

Perhaps instead of shurging it off, agree, or disagree, you should be asking, "Why is XPO loosing users to something that I (you, Gary) have no faith in?"

I am fully aware of the downfalls of EF, and I am STILL moving to it inspite of those things. That should be a pretty clear message in my opinion.

August 3, 2008 12:17 AM
 

Frans Bouma said:

as an O/R mapper vendor, I've mixed feelings about the EF introduction: I partly agree with you, Gary, that the EF will make more people aware of what O/R mapping is and will have the same effect as the poorly designed/developed winforms/webforms control package MS ships with .NET has for 3rd party control vendors like DevExpress.

However, I also think that a lot of major consultancy firms will base their software factories / in-house frameworks on the EF for the simple reason it's from Microsoft and their clients like to purchase stuff that's build with elements from MS, how sad that may sound.

I agree that the EF v1 isn't going to cut it, and the majority of people who will use it will likely drop it sooner or later for something more mature with more features, however that takes time. I've to add that I had the same thoughts when Linq to Sql was introduced and it didn't have any negative effect on our sales whatsoever. A factor could be that despite popular believe, I'm not convinced that the majority of developers are currently developing on .NET 3.5 (yet).

August 3, 2008 6:51 AM
 

Gary Short said:

@Nathan,

Sorry you felt that I blew off Rollie's points, I certainly didn't mean to give that impression. He stated that XPO should have a visual front end, I explained why that would be a bad idea, he that stated that that EF was an XPO killer, I explained that the ORM community is fairly much agreed that EF is a flawed product so its hardly an XPO killer. I don't really see that I blew off his points.

You then go on in your comment to say that the fact that the two of you are moving from XPO to EF should send  a clear message. You are correct, it does send a clear message, but that message was one we already had heard and understood. We are already aware that there will always be a class of developer that will move to the latest offering from Microsoft regardless of the fact that it does not measure up to the competition already in the market place.

August 3, 2008 7:25 AM
 

Gary Short said:

@Frans,

I agree that consultancy firms will base their products on EF, but not on this version, they will have to wait for a more complete solution and in the meantime, developers are being educated in the principles of ORM

August 3, 2008 7:27 AM
 

Rollie Claro said:

HI All,

  now this is a classic "office 2003 and office 2007 war"!

which is better office 2003? or office 2007?

Hi Gary,

   we like to hear a concrete answer.

   "how do you think will XPO benefit from EF?"

August 4, 2008 6:13 AM
 

Gary Short (Developer Express) said:

@Rollie, that was the very question I answered in the blog post.

August 4, 2008 7:01 AM
 

Sigurd Decroos said:

Rollie,

I think your question is easy: Office 2007. Better .Net integration, easier for newbies to 'Office'. Better XML/PDF suport, ...

EF or not, that's a far better question. I've seen samples where LINQ makes terrible slow SQL statements. And because EF is based on LINQ, I'm a bit afraid of this. LINQ is good for in memory data (IList, datasets, ...). Multiple database support is also a big problem, distributed transactions is almost impossible. EF is not ready for the big world, it is good for small programs with a simple database, not for ERP or advanced CRM.

Well, that's my experience with it :)

Greetings,

Sigurd

August 4, 2008 7:19 AM
 

Nate Laff said:

Gary,

I don't think you "blew" him off, I think you "shrugged" him off :) I think there is a difference. If not, I'll clarify.

You've taken the stance that XPO is better than EF. Good. In a lot of ways it is. XPO is a fantastic product. That's what originally peaked my interest in DX.

However, comments from Oliver in previous blogs indicate that little work will be done in XPO in the future. Big mistake.

It's not about moving to EF for the "latest and greatest" out of Microsoft. In fact, I don't even agree with Rollie that a visual designer is necessary. It's about XPO being a suitable DAL in a three-tier architecture. Which, at the moment, it is incapable of being. You recognize these problems, but if they're unaddressed, XPO really WILL become inferior to EF over time.

But like I said, you answered his questions, not blowing them off, but shurgging them of as in, "Oh, well..."

August 4, 2008 10:39 AM
 

Nate Laff said:

Just realized my original post did say "blow each point off"

My bad... not intended that way. :)

August 4, 2008 10:53 AM
 

Sigurd Decroos said:

>>>However, comments from Oliver in previous blogs indicate that little work will be done in XPO in the future. Big mistake.

What is this? Will general development of XPO fade away, or will there be no support for EF from XPO? As long as XPO becomes better (N-Tier support), I don't really care for EF :)

August 4, 2008 11:38 AM
 

Gary Short (Developer Express) said:

@Nathan, in any development project where there are finite resources and developer time at DX is certainly finite, there will always be a certain amount of "shrugging off" of user's comments, things where we agree with what you are saying and would develop support for them in an ideal world, are "shrugged off" because we don't live in an ideal world, we live in the real world, and there is only so much we can do. It doesn't mean we disagree with you though.

@Sigurd, one of the things which is in the pipeline for XAF is to make the ORM part pluggable, that way a user could use EF, or ECO or XPO whatever ORM tool they feel is best for their particular requirements at the time. However, XPO isn't going anywhere, don't worry :-)

August 4, 2008 12:12 PM
 

Websites tagged "orm" on Postsaver said:

Pingback from  Websites tagged "orm" on Postsaver

August 15, 2008 4:15 PM
 

Malisa said:

i think there is very little documentation on XPO, especially in ASP.NET. It would be nice to have some quickstart templates (.vsi) or some examples of how developers can use it for portal development, blogs and other webapps.

Its still unclear to many the best practicies of managing states / sessions in XPO.

Its still unclear to many the best practices of user management in ASP.NET.

I think XPO is a good product, and needs some docs, examples and evangelism.

August 21, 2008 3:19 AM

Leave a Comment

(required)  
(optional)
(required)  
Verification code: Required
   
Add
Copyright © 1998-2008 Developer Express Inc.
ALL RIGHTS RESERVED