Motorcycle Adventures and Free Software
Henri Bergius
Biker, free software consultant, neogeographer

There is a total of 768 posts.

Weblog: category "geo"

Halti.com provides contextual product recommendations

Posted on 2010-02-10 15:33:05 UTC in 60° 9.984 N 24° 55.050 E Helsinki, FI to . 0 comments.

Last week the Finnish outdoor brand Halti launched a pretty interesting web service. While many outdoor brands focus on extreme sports that don't really have much to do with the reality of most of their customers, Halti connects their product lineup to the needs of the site visitor by utilizing both weather and location. This means where ever they are or are planning to go, they can get product recommendations personalized to their needs:

halti-small.png

This is another case of location context being used to serve users better. To figure out where the user is coming from the site uses a combination of IP positioning and browser geolocation, while weather information comes from Foreca's feeds. Map visualization uses CloudMade's OpenStreetMap-based maps. And of course the whole thing runs on the stable Ragnaroek series of Midgard.

In other news, Jos et jaksa is another pretty interesting recent site launch, especially for the fact that it is the first-ever website running on the legacy-free Midgard2 platform and Midgard MVC.

Sponsored links

Microsoft Certification Exams โนเกีย Nokia มือถือ Online Project Management save money using, phone card
Reviews มือถือ Mobile All Apps

Google's Near Me Now: not quite there

Posted on 2010-01-08 11:50:11 UTC in 60° 10.290 N 24° 56.796 E Helsinki, FI to . 0 comments.

Google launched a new mobile web service called Near Me Now that can recommend things like restaurants, bars and ATMs near you. This uses browser geolocation to provide only results relevant to where you are.

googlenearme.jpg

The idea is quite good: to replace business directories like Yelp or eat.fi with something that is easily accessible from Google's homepage and uses Google's great relevancy algorithms.

However, the implementation is not quite there yet. My main gripe is that they implemented this using browser sniffing so that the feature can be accessed only with iPhones and Android devices. Even though I'm using N900, a mobile device that has GPS and provides geolocation through the browser I cannot access that site. That reeks of the bad old times of IE-only websites.

Lesson: if you need browser sniffing to provide some feature, implement it based on browser capabilities, not the user agent (which can anyway be spoofed easily).

Easy user location with Midgard

Posted on 2009-12-02 14:08:41 UTC in 60° 9.798 N 24° 55.674 E Helsinki, FI to . 0 comments.

Location is an important context that web services can utilize for fun or smarter user interaction. In past getting location used to be difficult, but now thanks to good IP locationing databases and browser geolocation capabilities it is becoming a lot easier.

But to be really easy, the framework you're using should provide user's location built-in, without you as an application developer having to think about it. This is the reason for Midgard's geolocation features to exist, after all. With Midgard, getting user's location is quite easy:

Midgard MVC (Midgard 9.09)

// Read location from session or user's location log
$user_location = midgardmvc_helper_location_user::get_location();
if (is_null($user_location))
{
    // No location found, try to geocode based on user IP via the GeoPlugin service
    $geocoder = new new midgardmvc_helper_location_geocoder_geoplugin()
    $location_parameters = array('ip' => $_SERVER['REMOTE_ADDR']);
    try
    {
        $user_location = $geocoder->geocode($location_parameters);
        midgardmvc_helper_location_user::set_location($user_location);
    }
    catch (Exception $e)
    {
        // Couldn't get location from IP
    }
}

if (!is_null($user_location))
{
    echo sprintf('You\'re in %s, %s', $user_location->latitude, $user_location->longitude);
    // Will print "You're in 60.1633, 24.9279"
}

MidCOM (Midgard 8.09)

<?php
// Read location from session or user's location log
$user_location = org_routamc_positioning_user::get_location();
if (is_null($user_location))
{
    // No location found, try to geocode based on user IP
    $geocoder = org_routamc_positioning_geocoder::create('geoplugin');
    $location_parameters = array('ip' => $_SERVER['REMOTE_ADDR']);
    $user_location = $geocoder->geocode($location_parameters);
    if (!is_null($user_location))
    {
        // Store geocoded location to session or user's location log
        org_routamc_positioning_user::set_location($user_location);
    }
}

if (!is_null($user_location))
{
    echo sprintf('You\'re in %s, %s', $user_location['latitude'], $user_location['longitude']);
    // Will print "You're in 60.1633, 24.9279"
}
?>

The examples above will work with both anonymous site visitors (using sessions) and registered users (using Midgard's position log). In this example we check if location is already available via browser geolocation or some importer like Qaiku or Fire Eagle, and if not we fall back to IP-based positioning using the GeoPlugin service. The resulting user location array or object (depending on Midgard used) contains a textual description of the place and accuracy information in addition to WGS-84 coordinates.

OSM2Go: wonderful mapping tool for Maemo

Posted on 2009-07-12 13:13:01 UTC in 52° 21.774 N 4° 54.416 E Amsterdam, NL to . 0 comments.

Today in the State of the Map conference I gave a lightning talk introducing Till Harbaum's OSM2Go, a wonderfully simple tool for contributing to OpenStreetMap.

OSM2Go editing Hietalahti, Helsinki

If you want to contribute to a freely available map of the world, download OSM2Go to your tablet and start mapping! My slides are available on SlideShare.

See also my Qaiku notes for SoTM day 1 and SotM day 2. Really amazing to see how far the project has advanced since the 2007 conference. Much of Western countries is already mapped, and many NGOs are working to get the developing world mapped, in many places for the first time ever in digital format.

Technorati Tags: , ,

Firefox 3.5: upgrade now

Posted on 2009-07-01 05:52:52 UTC in 60° 10.524 N 24° 55.146 E Helsinki, FI to . 0 comments.

Firefox 3.5, the latest version of the best desktop browser was released yesterday. Upgrade now, and you'll get cool new features like browser geolocation and native HTML5 video support, not to mention much faster javascript.

Firefox 3.5

With both Firefox 3.5 and iPhone OS 3.0 out, a significant number of browsers suddenly have geolocation support. It will be interesting to see how quickly web services start to follow up, providing more meaningful content through the location context.

There is even a patch to make Firefox use GeoClue for its location needs.

Technorati Tags: , ,

Browser geolocation without GPS: quite accurate enough

Posted on 2009-06-13 10:57:56 UTC in 60° 10.524 N 24° 55.146 E Helsinki, FI to . 0 comments.

In our various GeoClue presentations we've been arguing that location comes in many flavors, of which GPS is only one. In many cases cell tower position or even WiFi connection can provide quite "good enough" location. On Mozilla Hacks they write about an OpenStreetMap-based browser location demo. I'd say the results are quite convincing:

Geode knows where I live

This is just a gentle reminder to allow other location sources that just GPS. By using GeoClue you get that for free.

Technorati Tags: , ,

On Linked Data and OpenStreetMap

Posted on 2009-05-22 18:21:37 UTC in 60° 10.524 N 24° 55.146 E Helsinki, FI to . 0 comments.

Linked Data is the W3C effort to move data out of silos and into the interconnected web. As search engines are becoming more semantically savvy, the next big thing will be establishing connections between different pieces of data by linking.

Sir Berners-Lee has an excellent TED talk introducing the concept.

In the talk he also shows how easy it is to edit the OpenStreetMaps, a bit like I've done before.

TED talk: OpenStreetMap editing

Promoting OpenStreetMap is great. But is this Linked Data? I'd say no.

It is great to know the shape of a building, and the location of it, and the fact that it is a theatre called Terrace Theater. But that is still slightly ambiguous. Things would be clearer by linking to it, then we'd know the boxy shape on the map is actually this place.

But still, to repeat Sir Tim's slogan: Raw Data Now!

Technorati Tags: , , , ,

Today's meetings on a map?

Posted on 2009-05-19 14:08:27 UTC in 60° 9.792 N 24° 55.674 E Helsinki, FI to . 0 comments.

I've got no information on the validity of the claimed Harmattan screenshots that are floating around, but anyway wanted to comment on a part of it:

Today's activities on a map

Having your today's meetings on a map would be really cool.

This is something I've wanted to do with OpenPSA ever since the days I spent motorcycling around office districts of Helsinki giving Midgard demos. I'd often have only 15 minutes to move from one presentation to another, and at that pace figuring out the locations was a pain in the ass.

Geocoding meeting and TODO item locations would be a problem, but if that was solved this would be a killer feature. Maybe something we could do with GeoClue and libchamplain?

Technorati Tags:

Learn about Midgard2, GeoClue and libchamplain in GUADEC 2009

Posted on 2009-05-04 11:39:11 UTC in 60° 9.792 N 24° 55.674 E Helsinki, FI to . 0 comments.

GUADEC will be arranged this year together with aKademy as the Gran Canaria Desktop Summit on July 3rd - 11th. The event will be an excellent opportunity to learn about some new technologies for the Linux desktop:

Bergie explains GeoClue in GUADEC 2008

I will probably also have to defend my title in the Ice Cream Deathmatch. See you there!

Technorati Tags: , , ,

We're joining the Qaiku project

Posted on 2009-03-13 16:03:13 UTC in 60° 10.062 N 24° 55.638 E Helsinki, FI to . 0 comments.

I've been beta testing the new conversation-oriented microblogging service Qaiku, and after some negotiations we today signed a cooperation agreement to join in developing the site:

Qaiku is a microblogging service, focusing strongly on discussion. Microblogging differs from ordinary blogging by the length of the posts, more topical content and automatically published micromedia, such as Flickr photo stream, Audioscrobbler stream etc. Allowed lengthier comments to the brief posts make discussion possible.

Qaiku

Technically Qaiku has been built on Midgard 2 platform. Some of the features Nemein will develop for Qaiku will be released in the open source Midgard 2 project.

On my list of priorities is a public API, OpenMicroBlogging support and location import from various services like Fire Eagle and Plazes. I hope to get hacking on these as soon as I return from the Linköping Midgard Gathering. Will be fun!

Technorati Tags: , , ,