What should I work on next?
As we near completion with EF Prof, I am starting to think about what the next project* would be. I got some ideas, but I would like to see what you think.
Note that I won’t necessarily follow this, but it would be a good indication about where to proceed.
A small explanation about the choices:
- Entity Framework Caching Layer is an idea about adding 2nd level caching (similar to the way NHibernate is doing this) to EF, giving you transparent caching integrated into Entity Framework.
- Production Profiling means that you’ll be able to connect to a production application with the profiler and see what statements it is executing, without paying any performance price when you are not connected.
- LLBLGen Prof – as the name says, adding a new profiler profile that would support LLBLGen
- DAL Prof – this is interesting, instead of supporting a specific product, this is meant for users who have a custom DAL, but still want to get the profiler benefits.
And anything else that you might want to suggest.
* Please note that all options discussed here are commercial ones.
Comments
Come on people, you know you want "Production Profiling"! Any insight into things going wrong (when we think they shouldn't) is pretty valuable.
Question for Oren, would you have to support all other ORMs before this feature could be released? Or would you release the NHibernate implementation as it's completed? (Since you've been doing "continuous releases", I'm hoping it's the latter.)
(thanks for the call for feedback!)
What about the Linq-to-SQL profiler progress? Do you have an idea when it is going to support logging commands that run off the DataContext connection?
DAL prof sounds really interesting.
DB4O profiler! Please - the tooling in this space is greatly lacking. We could really use a profiler for DB4O.
Definitely production support. I don't mind deploying your DLL with my code pushes, however I just want it to side idle with no overhead until the profiler connects.
Production Profiling! That would be exceptional.
Production Profiling.
From a business perspective implementing caching for Entity framework might be not be a good idea, since chances are that the EF team would implement this themselves. (I'm just guessing here)
I think product profiling would be a good choice. Building a killer feature into your own product cannot be a bad idea.
DataObjects.Net profiler
+1 for production profiling. From 4 beta users
Eddie,
The actual problem is not support for hooking into each profiler (well, that isn't true, with NH it is slightly easier), but how to deal with it in the first place.
There are several concerns that I just ignored in the past that are important for production: stability, security, memory usage, etc.
Dmitry,
L2S Prof should, OOTB, support logging commands using the DataContext.Connection directly.
Judah,
I think we already talked about that, no?
The problem is what does it means to have DB4O profiler.
BjartN,
EF 4.0 features are pretty much baked in.
At a minimum, there is a 1.5 years gap that is an opportunity for a caching layer.
I don't intend to bet the farm on that, but a year of sales for something like that is still pretty nice.
Jarf,
I don't think that this is likely.
I like the Caching Layer for Entity Framework. Besides the easy answer, my question is: why don't do it open source?
A nice ETL tool instead of SSIS :)
Production Profiling
ivos,
Because I find myself desirous of compensation for EF work
Janus: Check out Ayende's Rhino ETL tool. The guys here at work have been using for a huge data migration task and say it's great.
EF Caching: Indeed. But only having any cool factor if done as an open source project. Other than that, EF is still largely irrelevant.
Production profiling:Absolutely.
LLBLGen Prof: Haven't used it much, but Ayende+Frans is always an interesting combination, and the inevitable discussions could result in real community benefit.
DAL Prof: A bit abstract
Other: No. Please don't go there.
Rhino Security. Somehow there aren't many people using it yet. The question is: why? Maybe you could look into that.
I go for - Production Profiling. ;-)
+1 production profiling
What if there was an option to write a NH Prof adapter that would allow an application that is using custom ORM/DAL to be profiled with NHProf? Would it be very difficult?
Production Profiling.
And the "Sorry, but this comment is a duplicate of another comment. Duplicate comments are not allowed" validation is the only reason why us, the "production profiler sect", did not take control over this post...
Ayende,
How about taking some time off :) U are a lucky guy, love what u do and being the best!
Keep up the sharing!!!!
/Jonas
@Ayende
Did you find EF interesting, or just go where big enough market is (or presumably soon will be)?
I don't care about EF, and Production profiling seems like the most reasonable choice from where I stand.
Alghouth you'll hopefully still have some time left for OSS work ;)
I would like to see a 'DAL' profiler. ORM libraries that provide lazy loading can't be easily used with desktop applications. Either it downloads big chunks of your database or you need to enclose call's to lazy relations with a session. In WPF that's not that easy.
I need lazy loaded entities without the hassle to provide a database context when such related entity is accessed using a binding. So we end up writing our own DAL/ORM. It's very simple and projections are limited. For complex projections we used a iBates like solution. Instead of specifying a table, one can specify a query and map the result to an entity.
Rafal,
That is what DAL Prof is all about.
Jonas,
I did, just recently, no one noticed
Krzystof,
The caching stuff is interesting from pure geeky point of view, but working on EF is because I expect a market there.
Dave,
Hm, I completely disagree with you on the desktop apps & OR/M part, you might want to read my MSDN article about this exact topic
As well as Production Profiling, I like the idea of products that support your other Rhino offerings, RhinoSecurity and RhinoETL.
I'm still quite new to NH so the biggest benefit of NHProf for me is the confirmation it gives that NH is set up and being used properly. Having this insight to your other offerings will for me, be a big benefit.
I appreciate the market must be there to make a business work.
I'm pretty sure that you are aware of it but still (just in case)...
Have you seen this?
http://code.msdn.microsoft.com/EFProviderWrappers
Nikola,
I am aware of this, yes.
That is quite an invasive approach, and not something that you would probably want to do.
I have a much less invasive approach designed.
what about macto?
+1 for Production Profiling
+1 for Macto :-)
Maybe to make it worth your while you could publish it as open-source, but give the information in a Tekpub series so you get some money too.
I'd happily pay $20-30 to see how you develop good software!
Macto as aTekpub series would be a great idea.
What about Lightspeed? It's an interesting OR/M and not some inferior product like L2S or EF. I'd buy it for sure..
It seems that most real IT projects need to be maintained forever. Bugs need to be fixed. Features continue to creep in. More bugs because of the feature creep. Etcetera. And eventually you become walled in by all these old projects that continue to demand attention.
It must be nice to be able to finish a project and get some closure like that. How do you do it?
wcoenen,
A project is never actually over, there are always more things to do. But at some point the number of things to do reduce to a level that means that you can more or less put it on a back burner.
At that point, you have time to do other stuff
For me, a LLBLGen profiler would be very usefull.
Production profiling!
My vote is for LLBLGen Prof
Comment preview