Tuesday, January 27, 2009

C'mon Corporations! Meet the Semantic Web Halfway!

Click here to Retweet, please!

Today I got some validation that I am on the right track with some of my ideas. I made some comments nine days ago, imploring corporate web developers to make their information available via API's, and citing Best Buy specifically. Today I read that Best Buy did just that!

This is exactly what every web developer needs to be thinking about! It's the next phase of web development, and can keep all of us Web Developers gainfully employed for the coming years.

Think about the information that you have available that might be of interest to the general public. In Best Buy's case, it was Product Information (Product Number, Description, Price, Availability, Product Reviews), and Store Information (Location, Hours).

Note that this can be very fixed information (like price), or free-form information (like product review text).

Starbucks and Panera Bread (and every chain restaurant): I want your store locator accessible via an API. If I query by zip code, street name, city or state, I want to know the nearest store. I also want your store hours available via API.

Restaurants, if you accept reservations, I want an API to allow me to book online.

Delta Airlines: I want to know your flight schedule, along with availability and price. If flights are en route, let me query the current status (ETA). Put it in a machine-friendly API, not a human-friendly web interface. Make it easy for developers to mash it up!

Procter & Gamble: I want to be able to access frequently asked questions about your products. Where can I buy Febreze Air Fresheners? What are the customer reviews for Cover Girl Cosmetics? What are the replacement part numbers for my Braun shaver? How many carbs are in Crest White Strips? How many days in a row can I take Pepto Bismol? What are the usage instructions for Head and Shoulders?

For all publicly held corporations, how about some stock information and history? Where can I send my resume, and what jobs do you have available? Give me this information in an API!

GM: Put your new car product specs online in a JSON or XML format. What models do you offer for this year? Why should I need to comb thorough Kelly Blue Book to get this data in an organized fashion? How about a dealer locator API?

HP, provide an API for product lookups, and parts. I want to be able to query for a battery for my Compaq nc8430 computer, and the cartridge number for my DeskJet printer. But I don't want to use your human-oriented webpage. I want to use an API!

Even providing LINKS in an API would be valuable. Do you have PDFs online with instructions for a products? An API can provide a lookup for the PDFs.

Wal-Mart, Target, Sears - follow Best Buy's lead. Product information and Store Information to start with!

GE, I want product instructions online, queriable through an API. I want to be able to look up my oven's part number find out parts and waranty information. How about a distributor locator? Executive Information - who's who, with job history in an organized fashion. How about Press releases reachable and searchable via an API?

AT&T, I want stock information that's queriable. With all your buyouts and divestures, I want to be able to put in my stock purchase date, and know what the basis is. You have this information, help me find it with an API!

Radio Shack, can you provide me with a product equivalent guide? I have an A23 battery - what are the specs, and what is the Radio Shack equivalent? Provide it in an API so that a program can get to it!

Verizon, how about an API to allow me to send text messages to subscribers programmatically? Sure, you can require authentication or permission, or have other spam controls. How about a lookup of subscribers? Why not allow me to query on type of service - I have a buddy's phone number, but I don't want to send him a text message if he doesn't subscribe to that service (or if it'll cost him money to see it).

Or, if you are a standard blogger, SURELY you have something of interest to other people, that you can build an API for.

Making information machine-friendly via APIs will be the fulltime job of many web developers in the coming decade. Start now!

Click here to Retweet, please!

9 comments:

Vasudev Ram said...

AmyIris: excellenti, says I :)

I've blogged before about it being good to have most code as a library or API - this post of yours takes it to the next level ...

- Vasudev Ram
www.dancingbison.com
jugad2.blogspot.com

Ross said...

It's good news that Best Buy have come up with an API, and I'm sure it'll help them, but will it be as helpful to the consumer if they are not delivering the API to a shared ontology. Walmarts API is likely to be totally different so now I need to use something that understands both.

I guess what I am asking is, is it really possible to build the semantic web when none of the potential data sources adhere to a common schema, and where/who defines it?

And how do you convince these companies to co-operate with competitors?

Amy Iris said...

Ross-

Great observation! And I have some opinions that I'll share in an upcoming post, as to how this will work.

The short answer is that First-To-Market often wins. Take Google or Twitter. Google has built APIs to their maps and search. If you are a Google competitor, and want to leverage all the "mash-ups" that people have built using Google's API, then you'd be foolish to build an incompatible API. Embrace the ontology and Extend it (loosly borrowing from the words of Microsoft).

So now it's a race! Build an API (that has some value), recruit the developers to build to your API, and then you have an "installed base" that cannot be ignored by your competitors.

Your point actually reinforces my premise.

Juan Sequeda said...

Amy and Ross,

Great post! I agree with you 100%. Right now, companies are starting to create public API and Ross brings up a great point. What needs to be done is that the companies should realize that to have interoperability of their data, they should start adhering to the common schemas of the Semantic Web: RDF, etc. I envision that in a couple of years, all companies will be having their proprietary APIs and also their data in RDF and linked to other sources. It is time to evangelize the use of RDF!

Ross said...

Juan,

I think part of the problem (bearing in mind I'm not really a part of the SemWeb community and no doubt you'll have a good answer to this) is RDF, or rather its *perceived* impenetrability (my spelling sucks).

Microsoft totally nailed this by making things simple enough that as long as you don't stray too far from the path their APIs are pretty easy to use, and they provide tools for nearly everything. If you want to stray from the path then you're probably know what you're doing anyway.

Is there a vendor that is 100% behind RDF and making it easy to implement by providing the right tools and framwork? I totally take on board Amy's point that the first one to the stadium gets to specify the rules of the game, ensuing political fighting not withstanding :)

Sarah Mei said...

Data from government sources would be useful too. I'm standing on a corner - where's the nearest mailbox? I need to register my car - how much will it cost, where's the nearest DMV office and when's the next available appointment?

There's interest in this from academia too - I saw this article today talking about, essentially, standardizing the language that small devices use to talk to each other. http://news.mst.edu/2009/01/searching_for_pervasive_comput.html

But yeah, unless you're in an all-Microsoft world, standardization is the slow process of developers gradually realizing that your answer is right. ;)

dan said...

Amen! Amy as an investor in 2 restaurants and a developer by day, I totally agree. It would be awesome if somehow there was a general format (read "standard") way to check restaurant reservations, or store inventory...but i don't see it being supported. Yet! Who has the resources or time to build and support it. Until it's a commodity and everyone does it, you won't see the fiscally tight entities investing in it. Think websites 10 years ago, when nobody had them except a certain few. Now, you aren't credible without one. Not that I don't agree with your post, If you can point me towards a standard I'll build it!

Keith Burtis said...

Amy! You are spot on! Not only is Best Buy opening up it's API for developers but we are listening and engaging the community as well! (Shhhh...I am the Best Buy Remix Community Mgr.:)

All kidding aside, you are very, very right. At Remix we decided to open the API for the very reasons you have cited. To be part of that global chain of information is going to be super important moving forward.

I hope you go and apply for an API key and that we see some really cool things from you! I can tell you that we are planning some very cool things in the coming months and I hope you can be a part of that! Thank you for the write up and very well written I might add.

Keith Burtis - Remix Community Mgr.
@BestBuyRemix - Twitter

Bharath Yadla said...

Amy -

You are indeed right, the next decade for webdevelopers is to build on the APIs for all the consumer oriented applications / services. The need for corporations or the service providers to meet the web "Halfway" is absolutely the need of hour given the choices that the consumers have in today's world.
At the same time I also see that there would be new era of frameworks / platforms that focuses on the conusmer daily usage and need, rather than just social graphs, and would evolve where in it would be easy for developers to add these so called 'apps' that make the consumer end meet with the corporations directly.