Ayende @ Rahien

Hi!
My name is Oren Eini
Founder of Hibernating Rhinos LTD and RavenDB.
You can reach me by phone or email:

ayende@ayende.com

+972 52-548-6969

, @ Q c

Posts: 5,953 | Comments: 44,400

filter by tags archive

The consequences of web services architecture


I mentioned before that MS CRM's decision to build all its external API based on web services (that cannot be accessed outside of ASMX proxies) was a big mistake. It is a mistake because you are handing the developer a really clumsy, stupid, API.

I just spent an hour trying to figure out how to set a value to null. An hour!

It couldn't be as simple as this:

customer.new_employeeintouch = null;

It has to be:

customer.new_employeeintouch = new Lookup();
customer.new_employeeintouch.IsNull = true;
customer.new_employeeintouch.IsNullSpecified = true;

Comments

Stefan Wenig

Oh come on, this is so logical you should actually be surprised that resharper did not guess it and expand your "= null" to that code ;-)

The Other Steve

Rest assured. Microsoft could have come up with a clumsy, stupid API without involving web services.

Stuart Cam

Yes they could have, its called the Sharepoint 2007 API...

Vladan Strigo

Did you maybe think that MS CRM is only a test of developer patience? Something like MTV Boiling Point thingy?

Hehehehehe... if you can only last for a couple of more things like that.... MS will award you :) :)

--

Vladan

Jeremy Gray

Riffing on The Other Steve's point: Microsoft DID come up with a clumsy, stupid API without involving web services.

There's nothing about that API example that is specific to web services or that would have been caused by wanting to expose it as a web service. I'm sure that API was equally clumsy and stupid before it was wrapped for web service exposure.

Let's call a horse a horse, shall we?

Darius Damalakas

Ayende, but I did not get what was the problem with the web services?

Looks more like your opinnion, without having facts.

Ayende Rahien

Darius,

Do you really think that something like this is a reasonable API?

Darius Damalakas

Ayende,

Absolutely not.

The code smell probably lasts for two miles, or even longer. ;)

It's just that I'm picky, same API can be made without web services. simple as that

Ayende Rahien

Oh, yes.

But the reason for this API is that they decided to base everything on XML proxies.

I am going to assume that without that it would have been better.

I'm hearing that SharePoint managed to do as worse, but I have no personal experience/

Comment preview

Comments have been closed on this topic.

FUTURE POSTS

No future posts left, oh my!

RECENT SERIES

  1. The RavenDB Comic Strip (3):
    28 May 2015 - Part III – High availability & sleeping soundly
  2. Special Offer (2):
    27 May 2015 - 29% discount for all our products
  3. RavenDB Sharding (3):
    22 May 2015 - Adding a new shard to an existing cluster, splitting the shard
  4. Challenge (45):
    28 Apr 2015 - What is the meaning of this change?
  5. Interview question (2):
    30 Mar 2015 - fix the index
View all series

Syndication

Main feed Feed Stats
Comments feed   Comments Feed Stats