Motorcycle Adventures and Free Software

Weblog: Archive

2009-07-01 - 2009-07-31

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: , ,

Sponsored links

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

Qaiku API brings first clients: Mauku, Gwibber and an XMPP bot

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

Qaiku's twitter-like API has been one of the first major contributions I've made to the project, and it is great to see some first applications start to use it. Here are some examples:

Mauku is a microblogging client for Maemo. The new Fremantle version supports Qaiku nicely:

Mauku for Maemo 5 displaying my Qaiku

Gwibber is a Linux desktop microblogging client. Qaiku support is now available in the development version:

Gwibber displaying Markdown-formatted Qaikus

There is also an XMPP bot that we're going to launch soon for wider use. This enables you to monitor your mentions or some channels and post via any Jabber client:

QaikuBot in Adium

If you're doing something cool with the API, please let me know! The #Qaiku-api channel is good for usage questions and ideas.

Every now and then people ask me why we're doing Qaiku instead of "just using Twitter". Here are some points why Qaiku just works better:

  • Qaiku culture and features promote more meaningful and threaded discussion - in general, people comment much more than start conversations which is a good sign
  • Qaiku has language tagging and filtering meaning that when I post in Finnish it will not bother my international friends
  • Messages and comments are proper Markdown, reducing ugliness typical of tweets
  • Features like feed import and image sharing are built-in, removing need for external tools
  • Channels, and especially private channels enable us to do workstreaming in Qaiku

If you want to comment, you'll anyway find me both on Qaiku and on Twitter.

Technorati Tags: , , ,

Software patents are silly

Posted on 2009-07-02 10:13:46 UTC in 60° 9.792 N 24° 55.674 E Helsinki, FI to . 0 comments.

Dave Neary summed this up well:

...I fundamentally disagree with discouraging someone from pursuing a technology choice because of the threat of patents. In this particular case, the law is an ass. The patent system in the United States is out of control and dysfunctional, and it is bringing the rest of the world down with it. The time has come to take a stand and say “We don’t care about patents. We’re just not going to think about them. Sue us if you want.”

With Midgard we have prior art on some software patents. Software patents only promote big multinational monopolies, and therefore are against the interests of both Europe and the Free Software movement. They're silly, don't apply here, and therefore the only rational response is to ignore them.

Technorati Tags:

CouchDb and Midgard talking with each other

Posted on 2009-07-06 17:54:34 UTC in 28° 7.752 N 15° 27.078 W 5km NW of Las Palmas de Gran Canaria, ES to . 0 comments.

CouchDb is a really cool document-oriented map/reduce database that is nowadays an Apache project. Previously we created the distributed CRM application Ajatus on top of the system and ported CouchDb to Maemo.

Here in Gran Canaria Desktop Summit CouchDb has been somewhat a hot topic, as the Ubuntu project is planning to use it as the content repository for desktop applications.

We had a lunch with Jan Lehnardt today and discussed how to make Midgard2 and CouchDb interoperate better, and as it happens, it is actually very easy: CouchDb has a replication protocol that we can support also in Midgard, making the two repositories able to synchronize content with each other.

There is now a first test implementation of Midgard-to-CouchDb synchronization support, with better Midgard integration and CouchDb-to-Midgard coming soon. Check out the Midgard MVC component on Github. Anyway, already pretty cool!

Setting up replication on CouchDb admin UI:

Replicating from Midgard to CouchDb

Midgard record replicated successfully into CouchDb:

Replicated Midgard person record in CouchDb

I'll talk more about this and repository-oriented application development in my Midgard2: Content repository for desktop and the web talk tomorrow at 16:45. Be there!

Technorati Tags: , ,

Personal passions: motorcycle travel

Posted on 2009-07-08 10:38:10 UTC in 28° 7.752 N 15° 27.078 W 5km NW of Las Palmas de Gran Canaria, ES to . 0 comments.

Yesterday in GCDS there was a session about personal passions. First Jono Bacon gave a talk about the Burnout Cycle, and then various community members talked about what they do outside the sphere of hacking: running, cooking, building experimental airplanes and so forth.

I gave a quick talk about adventure motorcycling, speaking about my 2004 trip around the Black Sea, and briefly mentioning the Death Monkey trip on 50cc mopeds from Helsinki to Gibraltar.

Buying hats from Georgian Military Highway

You can find pictures from the Caucasus trip on Flickr and my travel log on Routa MC.

Riding 50cc Monkey to Gibraltar

Technorati Tags: ,

Why you should use a content repository for your application

Posted on 2009-07-08 11:37:50 UTC in 28° 7.752 N 15° 27.078 W 5km NW of Las Palmas de Gran Canaria, ES to . 0 comments.

Midgard2

I gave my Midgard2: Content repository for desktop and the web talk yesterday in GCDS. The slides are available on SlideShare. The main idea was that any application that deals with structured data could benefit from using a content repository like Midgard2 or CouchDB.

So, what is a content repository? It is a service that sits between an application and a data store. It provides several advantages:

  • Common rules for data access mean that multiple applications can work with same content without breaking consistency of the data
  • Signals about changes let applications know when another application using the repository modifies something, enabling collaborative data management between apps
  • Objects instead of SQL mean that developers can deal with data using APIs more compatible with the rest of their desktop programming environment, and without having to fear issues like SQL injection
  • Data model is scriptable when you use a content repository, meaning that users can easily write Python or PHP scripts to perform batch operations on their data without having to learn your storage format
  • Synchronization and sharing features can be implemented on the content repository level meaning that you gain these features without having to worry about them

Midgard2 is a content repository library that is built on top of glib, libgda and dbus, making it fit the general free desktop infrastructure very well. You can use it in any application that is written in C, Objective-C, Python, PHP, or soon Mono. Learn more from the slides!

Technorati Tags: , , ,

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: , ,

The uncanny valley of free desktops

Posted on 2009-07-16 19:47:28 UTC in 60° 10.524 N 24° 55.146 E Helsinki, FI to . 0 comments.

Myzone in Moblin 2.0
Discussing Google's yet-vaporware Chrome OS, Daring Fireball said:

Early versions of Gnome and KDE were pretty much just clones of the Microsoft Windows UI. They’ve diverged since then, and I’d say Ubuntu’s default Gnome desktop is in most ways better from a design and usability standpoint than Windows Vista. But it’s still fundamentally a clone of Windows — menu bars within the window, minimize/maximize/close buttons at the top right of the window, the ugly single-character underlines in menu and button names. At a glance it looks like Windows with a different theme. The idea being that if you want Windows users to switch to Gnome or KDE, you’ve got to make it feel familiar. But that’s not how you get people to switch to a new product. People won’t switch to something that’s just a little bit better than what they’re used to. People switch when they see something that is way better, holy shit better, wow, this is like ten times better.

So I think Gnome and KDE are stuck with a problem similar to the uncanny valley. By establishing a conceptual framework that mimicks Windows, they can never really be that much different than Windows, and if they’re not that much different, they can never be that much better. If you want to make something a lot better, you’ve got to make something a lot different.

This is a good point to consider as GNOME moves towards 3.0 with the promising GNOME shell. KDE's Plasma has taken some steps also, but really, the examples we should look at here are Moblin 2.0 and the Sugar desktop. Both of them have largely discarded the traditional "Windows model" in favor of more contextual and information-oriented user interfaces.

Technorati Tags: , , ,

Attention is difficult

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

Why can't we concentrate? is an excellent book review about Rapt on Salon:

"Immersing myself in a book or a lengthy article used to be easy," he wrote. "Now my concentration often starts to drift after two or three pages. I get fidgety, lose the thread, begin looking for something else to do. I feel as if I'm always dragging my wayward brain back to the text." For my own part, I now find it challenging to sit still on my sofa through the length of a feature film. The urge to, for example, jump up and check the IMDB filmography of a supporting actor is well-nigh irresistible, and once I'm at the computer, why not check e-mail? Most of the time, I'll wind up pausing the DVD player before the end of the movie and telling myself I'll watch the rest tomorrow.

Exactly the same symptoms I'm having. This is the reason I've written some of my best code while offline at the countryside or on a road trip, and why it was so relaxing to be without a phone for a week recently.

How to solve the issue of constant distractions? Maybe we'll need to be sometimes offline. And even while connected, we need attention profiling and better user interfaces. Something for the developers of the future free desktop to consider.

Confession: I must've switched browser tabs a dozen time while reading the Salon article. Concentration indeed...

Technorati Tags:

Will content repositories kill the file?

Posted on 2009-07-30 17:10:24 UTC in 60° 10.524 N 24° 55.146 E Helsinki, FI to . 0 comments.

MDK laments the demise of the simple file in the onslaught of storage services:

Sure, the applications still give you a way to share things and take them out of the storage. You can export a contact out of your address book as a vcard file. But the role of The File here is slowly being reduced to a role of an intermediate storage medium. The business card is temporarily put in the .vcf file before it gets injected into somebody else’s database (another address book?).

As more and more applications operate on databases, the computer is becoming a monolithic black-box that “has things”. How exactly (and where) the data is stored is becoming less clear. The application and the interface becomes united with the user data. It becomes one.

This echos the sentiments of Alex Payne when he warned against what he calls Everything Buckets:

Computers work best with structured data. Everything Buckets discourage the use of structured data by providing a convenient place to commingle “structureless” data like RTF and PDF documents. Rather than forcing the user to figure out the rhyme and reason of their data (for example, by putting receipts in a financial management application and addresses in an address book), Everything Buckets cry: “throw it all in here! Search it! Maybe I’ll corrupt my proprietary database, but maybe I won’t and you’ll have the joy of sifting through a mire of RTF documents. Doesn’t that sound great?”

And yes, I agree that obscure application-specific databases are not really better than obscure proprietary file formats.

This is exactly why I've been talking about content repositories, services like Midgard2 and CouchDb that not only can provide superior content storage and organization, but do it in a way that multiple applications can share. You can easily write your own scripts to perform batch operations on the data, and receive D-Bus notifications when something changes.

And good repositories also provide easy synchronization tools so you can have your data available on all of your computers, and even on the web. If they can also do peer-to-peer sharing, we're close to achieving the fully free cloud.

Technorati Tags: , ,

Back