User: Password:
Subscribe / Log in / New account


Open source from Big Business: Wayfinder and EurekaStreams

August 4, 2010

This article was contributed by Nathan Willis

Two new open source projects were unveiled to the public in the closing days of July, both from companies better known for producing proprietary products: British mobile network provider Vodafone and US defense contractor Lockheed Martin. Vodafone released the source code to its Wayfinder Navigator mobile mapping-and-routing system, several months after announcing the end of the commercial Wayfinder product line. Lockheed Martin launched an "enterprise social network" system called EurekaStreams, which the company continues to use internally and suggests will become a commercial product in the future. The two products could hardly be more different, and neither could the two approaches taken by the projects.


Wayfinder Navigator was a client-server navigation system; the maps were stored on the server, and the server searched for address and calculated routes, relaying its results to the handheld client. Vodafone purchased Wayfinder Systems AB in 2008, and sold subscriptions to the Wayfinder system to its mobile customers as a revenue stream.

As mapping enthusiasts would no doubt guess, that business model began to lose money once competition from completely free services like Google Maps picked up. Vodafone announced Wayfinder's end-of-life in March, refunding the balance of subscriptions already paid by customers.

The open source project was announced on July 13, hosted at The initial code release included the back-end server, client code for Android, iPhone, and Symbian S60 devices, a partially-finished client application written in C++, and a suite of tools for performing map conversion and managing a cluster of Wayfinder servers. All of the code was placed under a BSD-style license, and the source put into public repositories at GitHub. Subsequently, a sample set of Tele Atlas map data was released, under separate license terms that permit its use only for software development.

The server code as posted has been modified to use OpenStreetMap map data instead of the proprietary Tele Atlas maps that had been used by Vodafone. The project site cautions that differences between the maps may make routing unreliable at present. Vodafone engineers posted to the Wayfinder forum that there is no more code on way, particularly not the Maemo Wayfinder client that shipped for Nokia's N800 and N810 Internet tablets. The reason given is that the Maemo development team had long since departed, and Vodafone could not perform the audit necessary to ensure that the client code was entirely its to release.

As for the development of the code base from this point forward, Vodafone's intentions are murky. The GitHub repositories are read-only for the present, although the FAQ page solicits patches by email, and suggests that outside contributors can request write access. There does seem to be a small contingent of Wayfinder developers monitoring the project wiki, discussion forum, and blog, willing to answer questions. The project's documentation is also thorough, covering server-side installation, client compilation, map conversion, and, more importantly, documenting the server functions, API, and client-server communications protocol. On the down side, there have not been any commits to the GitHub code by Vodafone developers since the first release.


EurekaStreams is a web-based social network designed for use across a large enterprise. Lockheed Martin developed it in-house, and uses it for internal communications. The public "community" EurekaStreams project was launched on July 28. Its code is also hosted at GitHub, and all code is placed under the Apache 2.0 license.

By "enterprise social network," EurekaStreams means a single site hosting individual user accounts and permitting an array of in-network messaging and group collaboration methods. On the surface, the EurekaStreams site featured in the marketing and demonstration seems to take its cues from Facebook, although it is intended to run within a single company network and lacks several functions that commercial services feature, from ad serving to instant messaging.

Digging into the documentation, the emphasis is placed on conversation streams, and its list of features falls somewhere in between that of a basic microblogging platform and a full-blown bells-and-whistles site like those offered by Facebook and MySpace. EurekaStreams supports "follow" relationships (as opposed to bilateral "friend" relationships) between users, detailed profile pages, groups, lists, and searchable hash tags inside status updates.

The public messages are not limited to plain status updates, however; link- and media-embedding is allowed, as is posting to "group streams" instead of the user's personal stream, and the system will gladly consume any publicly-retrievable feed, such as Google Reader or bookmarks. The messaging format is based on OpenSocial 0.9, which also makes writing embeddable "social gadget" web applications possible. The documentation discusses this, but does not provide any OpenSocial gadgets in the default setup.

EurekaStreams is designed to run on Apache, and uses several well-known open source components: Lucene for search, Memcache for caching, PostgreSQL and Hibernate for storage, and Shindig for the OpenSocial implementation. The documentation provides a thorough specification of the system's architecture, from the conceptual design right down to the persistence and notification frameworks.

On the development end, the project is demonstrably still active. There has been ongoing activity since the project's release, reportedly from Lockheed Martin's original EurekaStreams development team. There are more than 130 open issues in the bug tracker, which is publicly accessible, and an active mailing list on which Lockheed Martin engineers interact with third-parties. One of the EurekaStreams developers said on his blog, however, that write access to the source repository itself will remain closed to outside contributors for the foreseeable future.

The value for the open source ecosystem

As is always the case when a large entity launches a new open source project with a substantial code base, the big question remains what impact either of these newcomers will have on the existing open source ecosystem.

The open source Wayfinder certainly has a lot of competition in the free mapping software space. There are numerous navigation applications for desktop Linux systems as well as for Android, Maemo, and MeeGo. Wayfinder is different in that provides a routing engine, which most open source clients do not. The routing algorithm is also documented, which could lead to its transplanting into other projects. Wayfinder also reportedly enjoyed a good reputation for its accessibility by hearing- and seeing-impaired users, something in which the open source competition does not receive high marks, and the code base covers two mobile platforms not often given attention by projects that begin as open source: iPhone and Symbian.

On the other hand, Wayfinder is also unique in its client-server design; most of the mobile open source applications are either client-only or depend on calculating routes and adding map tiles at a desktop computer in advance. The client-server model might be more convenient for those users with low-resource handheld devices, but a completely free routing server will not be easy to deploy. The OpenStreetMap project itself restricts API usage in order to keep its hosting costs under control — running a free OSM-based mobile service on a large scale either has to overcome the local map storage problem, or running a Wayfinder routing server separately.

EurekaStreams is most often compared to StatusNet in the open source social networking circle. In many ways, the feature sets do overlap, especially given both projects emphasis on real-time notification passing. EurekaStreams adds a bit more than microblogging, with a richer user profile system, built-in link-sharing, lists, and saved search streams. For its part, StatusNet supports plugins that can add many of those features, including expanded profiles, bookmark sharing, and file attachments other than images.

But StatusNet is also built around the OStatus protocol, which supports several features that are not currently implemented in StatusNet itself. OStatus incorporates ActivityStreams, which includes several message types beyond basic status updates, including "follow," "share," and "tag" alerts. Even more importantly, OStatus supports federation between independent sites, through the use of Salmon and PortableContacts. The EurekaStreams project sells potential customers on its highly-scalable architecture, but by all accounts, it still implements a social network designed to pass messages solely inside its own four walls.

Some early assessments of the open source Wayfinder project deemed it a code dump, with Vodafone setting its unwanted software out on the curb. If it is, and Vodafone has no intention of maintaining the code base, there is a window for outside developers to take up interest in the project before it falls into obsolescence. It is probably too early to make a final judgment on that; to its credit the company has at least been monitoring the project's activity and says it is open to outside contributors. Without full-time development, though, third-party developers may find it more attractive to sift through the GitHub repository for bits of reusable code simply to take home to their own applications.

EurekaStreams, in contrast, is far from finished. Not only does Lockheed Martin use it internally, but it appears to be undergoing constant development, and the company openly discusses plans to sell paid versions of the package to enterprises. Whether or not that proves a viable business model is yet to be seen. The social networking space is very young, and the competing open source projects even disagree on standards. EurekaStreams is certainly an impressive-looking stack at present; developers looking to start their own social networking system from scratch (such as Diaspora) could save themselves a lot of time and effort by at least taking a hard look at what it offers now.

Comments (3 posted)

Brief items

Quotes of the week

Audio hackers unfortunately don't grow on trees. In my counting, there are 3 people paid in the whole industry who work on general purpose audio infrastructure of Linux. Two of them are basically busy with keeping the HDA driver up-to-date, if I am correctly informed. The third one is me.
-- Lennart Poettering

Over the past few months, I've noticed something: Subversion development is fun again. I don't know if it's the fact that we're all working hard on a difficult problem, or that the code is changing rapidly, that we've got some new blood in the project, or simply that we're headed into the final push toward a landmark release.

Whatever the cause, thanks for making me look forward to hacking code these days.

-- Hyrum K. Wright

I'm right now listening music with my newest music app on my phone: Rockbox plays music on my HTC legend... I'm overly happy that I've gotten that far now. I'm looking forward to finally bring gapless playback, dynamic playlists and an extensive equalizer (and more) to Android! Although there's a lot of work still to do.
-- Thomas Martitz

Less and less sites work with Gnash everyday, and nobody cares. People just install the Adobe plugin, even most of our free software supporting friends.
-- Rob Savoye

Comments (1 posted)

Full GNOME census report now available

When Dave Neary announced his GNOME Census report, he stated that the full report would only be available to paid customers until October, when it would be released under the CC Attribution-Sharealike license. Things have changed, though, and the full report is now available to all. "Why the change of heart? My intention was never to make a fortune with the report, my main priority was covering my costs and time spent. And after 24 hours, I've achieved that. I have had several press requests for the full report, and requests from clients to be allowed to use the report both with press and with their clients." The report may be downloaded via this page.

Comments (6 posted)

OCRFeeder version 0.7

Version 0.7 of OCRFeeder - a tool for analyzing the layout of documents and performing optical character recognition on the text parts - has been released. Changes include a number of user interface improvements, a number of accessibility improvements, and a new "deskew images" action.

Full Story (comments: none)

Python 3.2 alpha 1

The Python development team has announced the first alpha release of Python 3.2. "Since PEP 3003, the Moratorium on Language Changes, is in effect, there are no changes in Python's syntax and built-in types in Python 3.2. Development efforts concentrated on the standard library and support for porting code to Python 3."

Full Story (comments: none)

pyvm 3.0 released

Pyvm is an experiment in building an entire user-space implementation from scratch using a Python-like language. Version 3.0 has just been released. "Currently, in 80k lines of code one can find: web browser, font rasterizer (TTF & Type1), PDF viewer, git, PGP, SSH, windowing environment that can run on linuxfb, audio/video player (requires ffmpeg) and many other applications in compact simplified implementations."

Full Story (comments: none)

The first Rakudo Star release

The first of a regular series of Rakudo Star releases has been announced. "Rakudo Star is aimed at 'early adopters' of Perl 6. We know that it still has some bugs, it is far slower than it ought to be, and there are some advanced pieces of the Perl 6 language specification that aren't implemented yet. But Rakudo Perl 6 in its current form is also proving to be viable (and fun) for developing applications and exploring a great new language. These 'Star' releases are intended to make Perl 6 more widely available to programmers, grow the Perl 6 codebase, and gain additional end-user feedback about the Perl 6 language and Rakudo's implementation of it." It's built on the Rakudo Perl 6 compiler, the Parrot virtual machine, and an initial set of library modules.

Comments (46 posted)

Newsletters and articles

Development newsletters from the last week

Comments (none posted)

Bacon: Red Hat, Canonical and GNOME contributions

Jono Bacon responds to the GNOME census and the criticisms of Canonical which have followed. "What the report doesn’t take into account are upstream contributions that are built on the GNOME platform but (a) not part of official GNOME modules, and (b) hosted and developed elsewhere, such as Launchpad. As such, while the report is accurate for showing code and contributions accepted into GNOME, there are also many projects built on GNOME technology that are not taken into account due to non-inclusion in GNOME modules or being developed outside of GNOME infrastructure."

Comments (22 posted)

Page editor: Jonathan Corbet
Next page: Announcements>>

Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds