The Mean Fiddler plays on!

Published 12 July 07 08:29 PM | andersnoras 

A couple of months back I wrote a small demo showing how core features of Microsoft's Astoria could be replicated using NHibernate. I only wrote the demo to take on Andres Aguiar's challenge on how long it would take to build Astoria after Ayende did his Bumbler demo. As always, the code was licensed under the Apache 2.0 License, so anyone interested could develop it further if they wanted to. I'm delighted to see that Derrick Rapp has found it worth while to do so. Derrick emailed me his code yesterday, and I'm impressed with how much work he has laid down. The humble demo now resembles a full fledged framework with support for XML JSON and HTML formatting (I only did GET), initial support for the full REST vocabulary (PUT, POST and DELETE in addition to my support for GET), complete support for Astoria's query language and a client API making the services easy to use from any .NET client.

// Using the Mean Fiddler client API
MeanFiddlerContext context=
    new MeanFiddlerContext("http://localhost/Northwind.fiddle");
IList<Customer> customers = context.CreateQuery<Customer>("/Customers").List();

As proof of maturity, Derrick redirected the Astoria AJAX client to a Mean Fiddler service, and apart from some differences in naming conventions, it worked flawlessly.

The project currently lives on Derrick's computer, but he is in the works of creating a project space on Source Forge and move it to there. Check back for directions! 

Filed under: , , ,

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# Ayende Rahien said on July 13, 2007 6:22 AM:

Andres,

Cool!

Are you interested in hosting under rhino-tools? Similar to Bumbler?

# andersnoras said on July 13, 2007 6:34 AM:

@Ayende;

I'm not directly involved in the project, but I'll ask Derrick if he'd like to host it there. The synergy with Bumbler is a good argument for this (even though the "new" Mean Fiddler no longer depends on Bumble :) )

# Derrick Rapp said on July 13, 2007 8:39 AM:

What inspired me to continue working on MeanFiddler is to get to a stage where you can write a simple domain model for a client application managed by NHibernate communicating to a separate more vast domain model on a server.  If the code got to that point, one of the immediate steps would be to port MeanFiddler to Hibernate in the Java world so that you can have .Net clients talking to Java servers without being any wiser.  

I've come to the realization that MeanFiddler really has the most potential in the Java world.  With the LINQ support for NHibernate it should be possible to expose NHibernate domain models to an Astoria service rendering MeanFiddler in the .Net world useful primarily only to the .Net 2.0 community.  

I'd love to keep working on the project but I was curious to hear what other people thought before making another move.

# University Update - AJAX - The Mean Fiddler plays on! said on July 13, 2007 8:46 AM:

PingBack from http://www.universityupdate.com/Technology/AJAX/3825101.aspx

# Spencer said on July 13, 2007 12:47 PM:

AFAIK Microsoft Astoria has pretty strong dependencies on the Entity Data Model (EDM) - judging by what people are saying about this technology, it is far from mature. I believe that this technology is a bit too complex - I'd love to see a simpler approach. I really enjoyed what Anders and Ayende did when they took the piss with Microsoft's "cool" new technologies when they wrote Mean Fiddler and Bumbler in record time. Its a pitty that these master programmers don't want to continue developing these frameworks - it would be soooo cool to see open source alternatives to M$ stuff taking the lead before M$ are able to release anything themselves.

# Derrick Rapp said on July 13, 2007 1:26 PM:

Well, I created a sourceforge project and it's currently under the review process.  When it's up, I'll post the URL here.  

@Spencer, I've read that myself about Astoria requiring a modified version of the entity framework with possibly extra attributes, but then again I also read that it will support anything that implements IQueryable.  I don't know and I haven't taken the time to install Orcas to experiment with the technology.  If it *is* tightly tied to the entity framework, then the Mean Fiddler has great potential.  If not, it would still be fun to get an OSS version out there as well as port it to Java/Hibernate.

# andersnoras said on July 15, 2007 12:46 PM:

@Derrick;

Judging by the Astoria FAQ Spencer is probably right about the ties to the Entity Framework. The FAQ has this to say about the relationship between Astoria and EDM:

"Astoria data services uses the EDM as the model for the data exposed through its services."

And this about the relation to ADO.NET Entity Framework:

"storia exposes data modeled as EDM models. The ADO.NET Entity framework is the natural choice for an infrastructure that already supports the EDM and through mapping technology can present relational stores in EDM terms."

One interesting aspect with Astoria is their experimental online storage service. The FAQ is rather vague on the pricing model, but it might appear to be something similar to Amazon's S3 service.

# Derrick Rapp said on July 16, 2007 6:56 AM:

So it is (see the link below to Pablo's blog).  I'm not sure what I read recently that made me assume it simply needs an IQueryable object.  Maybe I was merely assuming it would be so elegant. So with that said, the Fiddler does indeed play on and I look forward to developing it out more.  For anyone who is interested in helping, keep an eye out for the project on SourceForge and get in contact with me there.  For anyone interested in playing with the Fiddler, it's still in pre-alpha mode but again, keep an eye out for the project on SourceForge.

Pablo Castro's Astoria FAQ:

http://blogs.msdn.com/pablo/archive/2007/05/03/astoria-faq-from-mix.aspx

# Derrick Rapp said on July 18, 2007 9:07 AM:

For all those interested, the SourceForge project is online and I checked in the source tree.  I haven't produced any documentation nor an official release but that that will all come over time.  By the way, if anyone has any experience with other OR/M tools, I would love to see if you can create a fiddler provider given the current provider interface as I completely pulled out the dependency on NHibernate into an external assembly.

http://sourceforge.net/projects/meanfiddler/

# James Geurts' Blog said on July 18, 2007 12:22 PM:

I came across the Mean Fiddler project lately, and will definitely take a look at the source when I free

# Anders Norås' Blog said on July 19, 2007 3:24 AM:

A couple of days ago, I blogged about Derrick taking over the Mean Fiddler demo to turn it into a real

# 窃听器 said on September 12, 2007 9:03 AM:

Good article, the author thanks!

# Ayende @ Rahien said on February 11, 2008 1:52 PM:

Disinterest in technology

Leave a Comment

(required) 
(optional)
(required) 
Enter the code you see below