Simeon Simeonov

Subscribe to Simeon Simeonov: eMailAlertsEmail Alerts
Get Simeon Simeonov: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories by Simeon Simeonov

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)

XML in Transit: Encoding Data

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 instance/schema/DTD snippets. Second, the devil is very much in the details and there are lots of them. Last but not least, there are as many ways to encode data in XML as there are data encoding needs. ... (more)

The Interoperability Stack

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 the adoption of Web services. Without them, businesses will never be able to leverage Web services to their true potential. The Need for Higher-Level Interoperability Services Even the simplest ... (more)

Web Services Description Language

It's time to look at the details of the Web Services Description Language (WSDL) specification and, in particular, how abstract information about Web services is represented in XML and which extensibility mechanisms enable the binding of abstract specifications to concrete implementations. We start with a quick review of the WSDL information model. In the last XML in Transit (XML-J, Vol. 2, issue 2), we derived an information hierarchy for describing Web services by asking what, how, and where questions. The what question points us to the abstract specification of a Web service.... (more)

A Framework For Using Web Services

In my last XML in Transit column (XML-J, Vol. 2, issue 5) we looked in detail at the technical aspects of the service description layer of the Web Service interoperability stack (see Figure 1). In fact, the topic of our discussion - Web Services Description Language - has now been submitted to the W3C for review. In this column I originally planned to go a step higher and start to map out the space of Web Services advertising and discovery. Instead, I decided to bring the subject of service discovery and advertising within the context of a framework for using Web Services. The ... (more)