The inexcusable sin of any so-called information technology is failure to pay attention. The 1950s or 1960s model, where jobs get fed to big, dumb beasts that answer when theyre good and ready, must not sneak back into our lives as part of the baggage of distributed services.
I recently made the mistake of clicking on a hyperlink to a streaming video resource when I was inside a thin-client desktop, remotely accessing a server at dial-up speed. The same Web site, on the same dial-up line, worked fine with a local browser, but it brought the Citrix client to its knees. Worse still, I could not even get the attention of the clients top-level loop to abort the viewer task. I had to shut down the whole session and start from scratch. Pardon me, my time machine must have sent me back a few decades.
We need to redraw the map of application design. Some of us have done this before: Perhaps I date myself by even remembering flow charts, with their model of "start here, collect input, make decisions and put out the result."
Limiting as it sounds, it made my clients very happy when dBASE III on a PC could displace a minicomputer—but once they asked a question, they had to wait until they got the whole answer. I have an uncle like that.
Perhaps I dont seem quite so antique when I reminisce about my foray into PC game development: Meeting the expectations of pre-teen users requires, at a minimum, an attentive interactive design thats always prepared to be interrupted. Hello, Web services!
Unleashing the tools to write Web services, without the infrastructure to make them play nicely with one another and pay continual attention to users needs, is like the post-World War II fantasy of a helicopter in every driveway. Like drivers suddenly freed to fly, Web developers need something to do the job of stripes down the middle of the road.
The mockingly useless SysRq key on our keyboards should remind us that developers need to think in new dimensions—with attention to users as the pivotal axis of good Web services design.
Tell me why Web services wont work at email@example.com.