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: 18 | Comments: 87

filter by tags archive

The consequences of web services architecture

time to read 1 min | 90 words

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

  1. Buffer allocation strategies: A possible solution - about one day from now
  2. Buffer allocation strategies: Explaining the solution - 3 days from now
  3. Buffer allocation strategies: Bad usage patterns - 4 days from now
  4. The useless text book algorithms - 5 days from now
  5. Find the bug: The concurrent memory buster - 6 days from now

There are posts all the way to Sep 11, 2015

RECENT SERIES

  1. Find the bug (5):
    20 Apr 2011 - Why do I get a Null Reference Exception?
  2. Production postmortem (10):
    03 Sep 2015 - The industry at large
  3. What is new in RavenDB 3.5 (7):
    12 Aug 2015 - Monitoring support
  4. Career planning (6):
    24 Jul 2015 - The immortal choices aren't
View all series

Syndication

Main feed Feed Stats
Comments feed   Comments Feed Stats