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. A... (more)
The last edition of the XML in Transit column (XML-J, Vol. 1, issue 4)
introduced the Simple Object Access Protocol (SOAP). Instead of dwelling on
technical issues, it focused on the driving forces behind the technology.
To put SOAP into context we looked at its history, parsed the
buzzword-compliant phrase ubiquitous XML distributed computing infrastructure
and scoped the SOAP specificat... (more)
I just came back from the first face-to-face meeting of the W3C working group
on XML Protocol (is it just me, or is the name somewhat odd-sounding?), and
I'm wondering what topics to exclude from this column. Yes, that's right -
exclude. Encoding data in XML is a difficult topic for many reasons. First,
it's one of those technical subjects in which you need to look at lots of XML
instanc... (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 t... (more)
For the past six months we've looked in detail at the nuts and bolts of XML
protocols, Web services, and XML data encoding. These are the foundation
technologies of next-generation Internet distributed applications. In the
next several months, I'll focus on another, no less important area -
higher-level description, discovery, and integration services.
These technologies are catalysts for... (more)