Web Services were a big business back in the early 2000s. After many expensive and incompatible attempts to integrate disparate systems (yes, I’m looking at you CORBA), Web Services hits us like a breath of fresh air.
Of course it wasn’t a silver bullet, but it certainly made integrating systems much easier than having to deal with multiple proprietary applications or poorly implemented specifications.
By 2003 I was doing quite a bit of Smallworld integration work in North and South America, for the GE Services group, and quickly realized just how valuable a properly implemented, reusable Web Services toolkit could be. So I wrote one over the course of a few projects and reused it in a number of subsequent integration implementations.
Fortunately other groups in GE were working on similar initiatives, and since there was a good culture of sharing, it resulted in some excellent ideas being exchanged.
I wrote an article, published in the February 2003 issue of geoworld magazine, that described the benefits of Web Services and how integration costs could be reduced.
Interestingly enough, almost 17 years later, although the technologies have changed somewhat, the ideas and concepts remain as relevant today as they were back in ’03.
If we replace XML with JSON, SOAP with GeoJSON and Web Services with RESTful Services or GraphQL, that article reads like it could have been written last week. That’s the beauty of well-thought-out concepts: technologies may come and go, but the underlying concepts remain evergreen.
Here’s the original article.
At the end of the day, it’s important to view projects in a holistic manner, rather than looking at them in isolation. Usually common patterns can be extracted and implemented with tried-and-tested solutions built by others who saw a need for these same patterns.
And those, “others,” are often well-funded, multi-Billion dollar behemoths who employ some of the smartest and most talented people on the planet. In such situations, it’s generally a good idea to stand on their shoulders and leverage their work to your business’s advantage.
So while specific technologies may rise and wane, if you’ve kept the underlying concepts in mind (such as loose-coupling and re-usability to name two), your systems will be far easier, and less expensive, to maintain and enhance as they move through the years.