Saturday, April 18, 2009

A call for Location Based Services framework

In my mind, Location Based Services (LBS) could well be the next great thing. There are so many things out there that means we are "always on" and there are advantages to that and things that can be done with LBS that this just cannot go unnoticed.

On the other hand, I have found little in the way in frameworks for this, because this is complex, at least if you want it to be useful, and there are many integrations points and the technologies to be integrated are often very different, from end user interaction via maps and by just moving around with a GPS, to back-end services and databases.

Some of you might have read my blog post on a call to action for advancement of the GIS capabilities with MySQL. This (LBS) is exactly why I think this is important. As for any scientific use of GIS, this is of less interest in my mind.

And the reason I think it is important for MySQL is simple: LBS really should integrate with Web 2.0 based services of some kind, that really should be the centerpoint for this. Then linking up to other services and devices, such as Mobile phones, GPSes and WiFi locators and other such things, well that is another issue.

But besides MySQL supporting better GIS we really need an open framework here. I could of no one better to do this than the Open Source community. The framework would, as I see it, have attributes like this:
  • Ability to link of with devices are services on both the Client and Server side.
  • An ability for the individual user to opt-in and opt-out of any services.
  • A flexible Web interface that is accessible and usable to all.
  • A means of interacting with the service through an API even on the client side, i.e. if someone wanted to create a completely different looking web interface, they could.
  • A means of services to interact of the service level of this.
Among the services that would integrate with this, I can see Web 2.0 community services such as Facebook. But also GPS makers, using this to add extra services for their customers, and many other services: Search for a restaurant near me, where is my closest friend, find me a free flat in a specific area, I need a meeting room in the proximity of this or that.

As can be seen, I do not want to limit myself to only on-line LBS applications, that are closely linked with a GPS usually, but any type of exact or approximate location can be mapped to other objects. And running this in a MySQL GIS enhanced database seems reasonable. And then we add google maps. And CMS frameworks such as Joomla and Drupal could also make good use of this (This can be done today, to an extent, using, say Google Maps, I use it myself on my PapaBlues website, where Google Maps is used to display locations of festivals and places, places that have their geocode-information in MySQL, and I can do even more with this. But I would want this to be even more flexible. And I'm not going to write a GPS integration layer for PapaBlues, so that any GPS could be used to find the closest blues festival, or to download a POI (Point Of Interest) list of bluesclubs to that GPS. But that is exactly what the framework should do. So I admit there is an amount of self-interest here).

/Karlsson

4 comments:

arjen said...

You can do proximity and bounding rectangle searches without geospatial support, in fact it can be much faster to simply use highschool math (pythagoras, mainly) as a first filter, then use any math you like to filter further, at which point native RDBMS support is irrelevant.

Also, location based using pure geoloc conceptually sucks, I can be standing next to a cafe except there's a river inbetween an the closest bridge is a km away.
It's a simplification of the Google type, which, while very usable in generic/global terms, utterly sucks from the user perspective for specific websites. Websites should be smarter, and they can be given their domain knowledge.

Anders Karlsson said...

yes, I agree. But I still think that a geo basd framework is something that you want to add domain knoledge to. Also, I see this as going beyond simple mapping. I see services, locations and devices working together here, making it accessible to any site through an API. Much like Google maps, but taken one step further.

jka said...

Interesting! We are just starting up a project here in UmeƄ. It's a "Digital tourist guide" Where you will be able to create collections of POI's (among other things). We are currently looking at writing a Joomla plugin maybe we can do something together?
Everything will be GPL:d, we have just registered the project at SourceForge:
http://sourceforge.net/projects/visitas/also check out (in swedish):
http://200aravfred.blogspot.com/

Karlsson said...

JKA!

Please contact me at anders@mysql.com, I would want to speak to you. I'm a Joomla developer myself, and I am interested in what you are up to.

/Karlsson