I’ve been around software for 20 years now. Looking back, I have mixed
feelings about the progress we’ve made. The end results have been amazing
but the process of building software hasn’t fundamentally changed since the
80s. In fact, I see us make some of the same mistakes over and over again.
One of the common anti-patterns is over-relying on tools and frameworks
instead of inventing new programming models.
Layers of abstraction are fundamental to software. Some layers are defined
through programming models, e.g., machine language, assembly language, 3GLs,
JSP. Others are defined through a combination of tools and frameworks, e.g.,
MFC and Visual Studio on top of C++. There is a limit to how high we can
raise a level of abstraction through tools and frameworks alone. At some
point, a new programming model is the best way forward.
Here are some examples: CASE tools ... (more)
This is a call to action to everyone building clients, servers and frameworks
for rich Internet applications (RIAs) to improve the life of RIA developers
by improving the debugging of backend services RIAs depend on. I’d like to
thank the people who’ve offered valuable feedback and additional
information that I’ve integrated here.
The relationship of an RIA to its backend is quite different than that of a
traditional Web application. In a traditional, dynamic HTML generation Web
app, the output stream is under the control of the developer and the
application server. D... (more)
XML protocols can be broadly classified into two generations.
First-generation protocols are based purely on XML 1.0. Second-generation
protocols take advantage of two revolutionary XML standards - XML Namespaces
and XML Schema. This article analyzes the reasons why we need to make a shift
to second-generation protocols, and looks at industry activity in this area.
First-Generation XML Protocols
Generally speaking, protocols specify in detail how certain
business/application/network services are accessed through a set of requests
and how responses/replies are received. XML protoco... (more)
This article is based on the UDDI chapter in Building Web Services, to be
released this month. It appears here in slightly different form by permission
of the publisher, Sams. Contributors to the book are Doug Davis, Steve
Graham, Yuichi Nakamura, and Ryo Neyama from IBM; Toufic Boubez from Saffron
Technology; and Glen Daniels from Macromedia.
The last issue of XML in Transit focused on the categorization and
classification capabilities of UDDI. This month we look at the means for
customizing the power and flexibility of UDDI for your business through the
use of private UDDI reg... (more)
There's been much recent controversy about the role of Microsoft and IBM in
the evolution of Web services standards. At a conference I attended not so
long ago a pundit talked about the "standard setting duopoly." Several
articles have been written about the "undemocratic" practices of WS-I. Are
things really that bad?
Here's a somewhat cynical overview of the Web services standards process. MS
and IBM pick an area of standardization. They cooperate privately on core
concepts. They select a third partner to help them flesh out a draft
specification. The partner is chosen accordi... (more)