|
 |
If you torture data long enough, it will tell you anything you want!
Source Unknown
|
|
|
|
The next big thing: XML Web Services deliver advanced e-commerce solutions for developers
©2005
|
|
Best known for his pioneering work with helping bring the Web to Guam, building Web applications for businesses, and teaching others about
development practices, Jason Salas is one of the region's most sought-after developers. He designs enterprise-class business applications using ASP, .NET, SQL Server, C#, Visual Basic, XML/XSLT, and Java.
|
|
|
“The programmable Web” concept is an incredible innovation as the core foundation of what the next big thing in Internet development is – really getting a handle on the management of information
Former MIT Media Lab Director Nicholas Negroponte constructed a very powerful
premise in his landmark 1996 book
“Being Digital”: that while the most important asset to mankind in the 20th
century was the atom…being that collections of atoms could form physical,
tangible things that could logically enable them to perform duties, the more
important commodity in the new millennium would evolve into becoming the bit.
The world revolving around the orders of 1’s and 0’s, this was a fascinating
revelation. Thus, the most valuable asset anyone can possess is information.
How accurate Negroponte’s theory would become.
Several months back I wrote an article that warned that
local Web developers
had better learn how to program, or kiss their careers goodbye. Sad to say I
told you so. First, I’m not your “classical” programmer in the traditional
sense of the word. I’m a marketing dude by trade, by training, and by instinct,
so I’m mandated to know everything there is about absolutely nothing at all. I
just happen to be doin’ my freaky thang in the IT industry, so I picked up
writing code as a means of making sure that I stayed there. So obviously, my
training has been informal and unstructured. And with the small community of
software developers on Guam (and more specifically, in Microsoft technologies),
I’ve mainly been self-taught. That having been said, I would be remiss if I
failed to mention that mastering development with
Microsoft’s .NET Framework was not
the easiest of tasks for me. I learned VBScript and JScript for use with Classic
ASP, admittedly without too much difficulty. Being an interpreted platform and a
scripting language, respectively, they weren’t too hard to grasp. .NET brought
the harsh reality of my lack of a formal programming education crashing down on
me, and humbled me once and for all. I have newfound respect for you computer
science and engineering guys. Sorry I teased you in elementary school.
Like the more then 1,000,000 developers throughout the world who have migrated
to .NET’s object-oriented approach to distributed Web applications development,
I spent many long nights prepping myself for the .NET gold rush. Like anything
I’ve ever done, I eventually warmed up and gradually started to become quite
comfortable with .NET programming, and since then I’ve been completely engrossed
in researching, teaching, and writing .NET apps for the small community of
developers here on Guam. Much of my time over the past 8 months has been devoted
to reading countless books, interacting in forums and newsgroups, visiting sites
over and over again, thinking up clever associations to relate VB.NET syntax
rules to C# (and now, J#...argh), to just plain writing code. Lots of it. And
what I’ve found out how to do is nothing short of amazing. My point is that now
that I get it…I really like what I see.
And with so little (if any) true e-commerce applications being in use now by
Guam companies, this is the time to really capitalize on taking our collective
game to the next level. This is the thing to get into, because this is where
we're headed, and this is what is quickly becoming demanded by big businesses
for state-of-the-art data management.
A limitless future (at least in theory)
While many of the features of “the programmable Web” intrigue me as a developer,
none make me want to stay up for days and feverishly write code, if for no other
reason than my own amusement, more than XML Web Services. And this is looking at
the sub-genre in the round, from all the companies releasing their own SDKs for
creating Web Services, not just from the products coming out of Redmond.
Basically, the precept upon which the global emerging technology is based – that
information can be and very well should be, shared via the Internet – is an
ingenious perception, with the architecture supporting it making this relatively
painless (relative to software engineering over the last 15 years). This sharing
takes place by way of client applications: being Web pages, full-scale
applications, devices of all sorts, etc.
When working with clients, I always deliver an impassioned production when
showing people what XML Web Services can do for them. One of my biggest selling
points is not only going through product demos but reinforcing the theory of
being able to share information network-to-network without the costly use of
proprietary technologies – “CAN YOU SEE THE COMMERCIAL POTENTIAL???”
is a favorites rallying cry of mine. If it’s coded right by developers and
implemented well by companies, the sky’s the limit in what we’re going to be
able to pull off.
Now, we’re taking a recursive step forward, as the main network that binds us
all – the Internet – makes this in fact, possible with a number of upcoming
vendor-based platforms. And leading the charge, at least in terms of the
all-important time-to-market is Microsoft’s .NET Framework. And this ease of
accessibility takes place without the need for complex and headache-prone COM/DCOM
components, proprietary protocols, or unique applications not compatible with
the rest of the world. In some respects, even though we’re all now connected by
the Internet, we’ve still largely been separated by out own networks. XML Web
Services to some degree changes that.
For many Internet programmers, the development of XML Web Services is the
cornerstone of new Web - the next killer app that will allow companies to
seamlessly conduct public exhibits as well as private e-commerce transactions in
B2B/B2C situations. It’s a very natural and progressive step forward or advanced
Web development.
Advanced data access is admittedly a tough pill to swallow for many people –
developers and non-developers alike. Some get it right off the bat, and some
don’t get it at all. Some shy away completely, seeing this as a huge security
risk. Some don’t instantly see the benefits of being able to tap into data, or
use remote services just as easily if they were objects stored on a machine
locally. An exhibit I frequently refer to is the very excellent demo given by
Jason Roos and Ean Hernandez from SaltMine
for
Microsoft’s “.NET Show” exhibited a very interesting concept: that
information could be easily accessed and managed with .NET. Ean setup a simple
Web Service client that extracted data from two separate data sources,
completely disparate relative to the destination Web page itself, and then
displayed the gained data all with a simple two-line statement, and then even
applied a local business object to the gained data. The result was advanced,
complex data access made easy.
And so with the muse upon me, I spent countless hours devising my own collection
of Web Services… my “stupid apps”…mini-apps which ranged from WebMethods that
would carry out functionality such as filtering through my own personal black
book of phone numbers (a very small database), to running a de facto and
likewise bogus stock ticker, to making publicly-available random daily
affirmation statements, a calculator with financial functions, and even my
listing of Stephen King hardcover books, complete with object-oriented
accessibility and ADO-based functionality. And then I built clients that would
access data from multiple data stores and applications simultaneously and then
further render the data and modify it once accessed. Simple stuff, but the
concept was there. And to think that I can programmatically tap into this
information, no matter how trivial, from my workstation in my office to my home
LAN (two completely heterogeneous networks) with ease in a matter of minutes
over the ‘Net is amazing. And what is returned to the client is just pure XML
data…so it can be manipulated, managed or morphed in any fashion as I see fit.
Even “screen scraping” (the moniker adopted by Microsoft for describing the
process by which a Web page can extract data from a remote data source by means
of dynamic server-side processing) isn’t a completely new invention, as
UNIX-heads have been using tools like WebFetch
to copy data from one page to another for years. But the process was still quite
difficult to achieve with great accuracy for the average developer not privy to
massive data access tools. So this is a very intriguing step in the right
direction.
Show me the money
And although many people share my enthusiasm both in the potential for and
development towards .NET-based XML Web Services, there really isn’t much out
there now with commercial appeal. There are very few professional-grade
IP-accessible apps that have any real value outside of the “that’s cool”
spectrum (my personal favorites from an architectural standpoint being
Alan Meyers’ Music Database
and
Dan Wahlin’s Flight Tracker).
Yet I remain vigilant, knowing that once big business gets behind the XML Web
Services model we’ll see some really cool and useful data-driven Web apps being
easily accessible, or at least for a nominal fee. With the release of the final
spec of .NET having been presented and the announcement of
Microsoft’s .NET My Services line, namely Microsoft Passport, should be a
very welcome start to a hopefully long line of advanced, deployable,
componentized services. We could finally see the affluence of real-time stock
quotes on the Web, minus the 20-minute delay we so often see. You could easily
implement a FedEx package-tracking app on
your site to add functionality for customer purchases, or add
Expedia’s travel reservation features on
your company’s intranet to easily book flight and lodging reservations for your
traveling co-workers. Imagine the extensibility of being able to add
Amazon.com’s ordering system directly to
your page. In my own respect,
we’ve got the KUAM
News headlines ready to go as SOAP messages that forward-thinking devs can
plug into their own homepages…completely customizable, and completely free.
Again – can you see the potential? Whether as an aesthetic component which makes
a public site’s page that much more accessible, or as a e-commerce module
empowering cost-saving
And because the technology of XML Web Services is a general model that’s been
heavily invested into by major backers like Sun
Microsystems and supported by standards groups like the
W3C, being based on non-proprietary concepts
like WSDL, SOAP, HTTP, and XML only makes it that much more alluring. From a
competitive aspect, this means that the constant input and different iterations
from different solutions companies will bring consistently and constantly bring
forth new innovations in letting people access, share, and use information.
There is choice – so the millions of high-quality J2EE devs revving their own
engines can get in the fun just as much as the soldiers from the .NET camp and
each won’t be limited from being exposed to the benefits of the technology
merely out of rejecting development just to spite the company supporting the
platform.
XML Web Services aren’t going to be “the next Microsoft thing” that winds up
being dictated and dominated by the company’s lopsided philosophies – they’ll be
an Internet thing whose progress is motivated by fierce corporate competition
and even fiercer user demand.
|
|
|
|
|