Play with and understand WiFi Positioning System
A few months ago, Mozilla generated lots of buzz through its Geode extension, which locates users through the WiFi access point they were using. Other popular tools have similar features, such as 'Locate me' on iPod Touches.
So, a very interesting question is how does such technology work?
They consult a service called Skyhook Wireless. They drive around settlements in several countries and record the GPS co-ordinates of where they pick up certain wireless access points, so when users send the access point's MAC to them, it can return the co-ordinates. Many areas aren't covered but if you would still like to use it, and let others use it, one can manually add details to the system. The same system is used to correct erroneous listings.
Many services already make use of WiFi-based location services.
For example, GPS units may struggle to provide an accurate location indoors or in an urban environment, but Skyhook Wireless doesn't have this problem. Software like Google Maps on the iPhone use WiFi-based location in such scenarios.
Several online websites also use WiFi-based location services to return information based on the locality. Some are social networking, like brightkite and Fire Eagle to local search, although these services tend to be American. MyLoki is another service which relies on geolocation, and this allows location data to be exported to RSS feeds, Facebook or even Twitter. It can also grab data from 'channels' and plot things nearby on a map. These 'channels' include everything from Starbucks coffee shops to geotagged photos, Yelp reviews and cinemas.
Google Gears uses its own geolocation service, which websites like ITN use, but this is much worse than Geode/Skyhook, being accurate for me to about 150 miles instead of 15 meters!
Skyhook-based locations are built into the iPhone, the Opera web-browser and Mozilla Geode.
Privacy concerns are put to ease as data is only sent if you confirm the website can have access to it, and the software lets you specify how accurate a location you're willing to send.
The idea of geolocation and WiFi positioning is fantastic. Eventually, it will allow you to open your laptop and then share your location with others, should you choose, or find the nearest restaurant in a distant city!