cool geoinfo stuff going on

November 13, 2007

Several interesting news reached my sensory organs today:

Gypsy released
Iain Holmes just released Gypsy, a more elegant GPS daemon for a more civilized time. Full API documentation, a tutorial and even experimental packages are available (shocking, I know).
Gypsy is a good match for mobile devices if you ask me, and to that end I’ve tested it with N800 and a Nokia LD-3W bluetooth GPS — works fine.

Experimental user position support for Pidgin
I haven’t tested this proof-of-concept yet, but it is interesting: Geoposition sharing for pidgin on maemo. Doesn’t use geoclue but doing so might save several hundred lines of code…

Jaiku client released with source code
Henrik Hedberg released Mauku 0.3 (Jaiku client for Maemo) a few days ago. The source code is now available at Garage. Hmm, I smell a small geoclue project here… stay tuned.

API stability? whazzat?

November 10, 2007

I haven’t posted in a while, so some news first: I’ve joined the OpenedHand¬†crew. So far it’s been great: interesting projects, smart people and a really nice and telework-approving atmosphere (I had some doubts about working several thousand kilometers and two timezones away from the office, but it’s been very smooth so far).

For the past few days Iain Holmes and I have been reviewing the geoclue API (for those of you just tuning in: Geoclue is a geoinformation framework/library that’ll make your apps location-aware, whether on desktop, laptop or Internet Tablet). Iain posted our proposal to the mailing list yesterday. Comments on the API changes are very welcome, especially from application developers interested in using Geoclue.

I feel like I should explain why we want to change pretty much the whole API — I know it might look like NIH syndrome if you just take a quick look… So here goes:

  • First, we’re still unreleased*: if we want to change something, now is the time.
  • The way functionality was divided among interfaces did not make sense to us: One data provider may provide position, but not address info; another may provide both. It makes sense that the first one implements Position-interface and the second one implements both Position and Address. These changes will make it easier to write a master-server that could actually select different data sources based on their availability and accuracy
  • A few methods and signals had details that really needed to be changed: CivicLocation did not have timestamp on it. Position didn’t have real validity flags so it was hard to tell if a result was valid coordinate or not.
  • At this point the milk had been spilled already. The API had to break in a major way anyway, so there’s little harm in fixing the small annoyances too: CamelCasing interface, method and signal names; changing method names to more meaningful ones (like CivicLocation -> Address).

*) I do have geoclue packages available for maemo, but they’re not widely used yet, as far as I can tell. I promise to help if someone’s done a lot of work based on current API.