Foreword by Ian Robinson
Distributed application development often starts well. And just as often it ends badly. Point, add web reference, click: That’s the sound of a developer pointing a loaded client at your carefully crafted service interface. By substituting tooling for design, we somehow turned all that loose coupling into plain irresponsible promiscuity; come release time, we all have to join the lockstep jump.
In a more cautious era, we’d have just said: “No. Don’t distribute.” And in large part that advice still holds true today. A layer is not a tier. Blowing a three-layered application architecture out to distributed proportions is foolishness writ large, no matter how many open standards you implement.
But today’s applications are ...