{"id":207,"date":"2003-11-09T15:57:00","date_gmt":"2003-11-09T19:57:00","guid":{"rendered":"http:\/\/www.markbaker.ca\/wp\/?p=106"},"modified":"2003-11-09T15:57:00","modified_gmt":"2003-11-09T19:57:00","slug":"david-orchard-on-loose-coupling","status":"publish","type":"post","link":"http:\/\/www.markbaker.ca\/blog\/2003\/11\/david-orchard-on-loose-coupling\/","title":{"rendered":"David Orchard on Loose Coupling"},"content":{"rendered":"<p>Dave has <a href=\"http:\/\/www.webservices.org\/index.php\/article\/view\/1246\/\">written<\/a> a\ngreat piece on loose coupling for Webservices.org.  It really breaks things down well,\nincluding a list of 10 ways in which loose coupling can be achieved.  That list, *GASP*,\neven includes &#8220;constrained interfaces&#8221;.<\/p>\n\n<p>As you might expect, I disagree with Dave on some stuff.  But most of it is pretty\naccurate, I&#8217;d say.  Where I disagree with him,\n<a href=\"http:\/\/www.markbaker.ca\/2002\/09\/Blog\/\/2003\/10\/15#2003-10-orchard-web\">again<\/a>,\nis where he starts talking about the role of humans.  In several places, he correctly points out\nwhere, in the process of browser-based Web surfing, humans currently enter the equation.\nBut then, in most cases without any evidence that he&#8217;s thought about the issue at any\ndepth, automatically assumes that because humans currently do it, machines can&#8217;t,\nconcluding with the implicit assumption that the Web isn&#8217;t currently good for automata\nand therefore needs Web services.<\/p>\n\n<p>I really wish he would take the time to explore that hypothesis of his in more\ndetail, because it&#8217;s not like you have to look too far to see how automata have been\nintegrating with one another using constrained interfaces; there&#8217;s an entire\n<a href=\"http:\/\/db.cwi.nl\/projecten\/thema.php4?themanr=15\">branch of distributed computing<\/a>\ndevoted to it.  Allow me to paste a relevant snippet from that link;<\/p>\n\n<blockquote>\nLarge systems of distributed, heterogeneous software components play an increasingly important role within our society. The paradigm shift from objects to components in software engineering is necessitated by such societal demands, and is fuelled by Internet-driven software development. Using components means understanding how they individually interact with their environment, and specifying how they should engage in mutual, cooperative interactions in order for their composition to behave as a coordinated whole. Coordination models and languages address such key issues in Component Based Software Engineering as specification, interaction, and dynamic composition of components.\n<\/blockquote>\n\n<p>If I hadn&#8217;t mentioned that, and you stumbled upon it in an article like Dave&#8217;s, you&#8217;d\nthink that was talking about Web services, wouldn&#8217;t you?  Surprise.<\/p>","protected":false},"excerpt":{"rendered":"Dave has written a great piece on loose coupling for Webservices.org. It really breaks things down well, including a list of 10 ways in which loose coupling can be achieved. That list, *GASP*, even includes &#8220;constrained interfaces&#8221;. As you might expect, I disagree with Dave on some stuff. But most of it is pretty accurate, [&hellip;]","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-207","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/comments?post=207"}],"version-history":[{"count":0,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/posts\/207\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/media?parent=207"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/categories?post=207"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.markbaker.ca\/blog\/wp-json\/wp\/v2\/tags?post=207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}