Clicky

On the face of it, Maemo looks fuuuuuuuuuuking nice

Have you watched the all new Nokia Maemo introductory video yet?

I recommend you take 2 minutes to watch it.

On the face of it, Maemo — and the N900 running it — looks incredible. The video does a brilliant job of showing an integrated (internet supported) communications experience. The finger controlling the handset appears to behave in a manner reminiscent of Tom Cruise’s Minority Report.

Obviously it’s going to be quite a while before that kind of Minority Report UI becomes mainstream, but if the handset and the operating system perform anywhere near like they’re shown off on this video, well… it’ll potentially leave everything else standing.

Your mobile experience is highly dependent on what you can *do* with it. And third-party applications (or widgets/add-ons/modifications) really bring that alive. In the video, it’s no accident that Google Talk appears to have replaced SMS as a method of constant update. (The SMS option is still there, but they didn’t demonstrate that, they demonstrated a GTalk convo!)

What’s rather exciting is that 4-5 clicks from the Nokia Maemo homepage is this:

/**
* gtk_helloworld-1.c
*
* This maemo code example is licensed under a MIT-style license,
* that can be found in the file called “License” in the same
* directory as this file.
* Copyright (c) 2007-2008 Nokia Corporation. All rights reserved.
*
* A simple GTK+ Hello World. You need to use Ctrl+C to terminate
* this program since it doesn’t implement GTK+ signals (yet).
*/

#include /* EXIT_* */
/* Introduce types and prototypes of GTK+ for the compiler. */
#include

int main(int argc, char** argv) {

/* We’ll have two references to two GTK+ widgets. */
GtkWindow* window;
GtkLabel* label;

/* Initialize the GTK+ library. */
gtk_init(&argc, &argv);

/* Create a window with window border width of 12 pixels and a
title text. */
window = g_object_new(GTK_TYPE_WINDOW,
“border-width”, 12,
“title”, “Hello GTK+”,
NULL);

/* Create the label widget. */
label = g_object_new(GTK_TYPE_LABEL,
“label”, “Hello World!”,
NULL);

/* Pack the label into the window layout. */
gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(label));

/* Show all widgets that are contained by the window. */
gtk_widget_show_all(GTK_WIDGET(window));

/* Start the main event loop. */
g_print(“main: calling gtk_main\n”);
gtk_main();

/* Display a message to the standard output and exit. */
g_print(“main: returned from gtk_main and exiting with success\n”);

/* The C standard defines this condition as EXIT_SUCCESS, and this
symbolic macro is defined in stdlib.h (which GTK+ will pull in
in-directly). There is also a counter-part for failures:
EXIT_FAILURE. */
return EXIT_SUCCESS;
}

That’s a hello-world script.

I kid ye not.

Yes, it’s THAT easy. I could cut and paste that script, change ‘Hello World’ to ‘Hi from Mobile Industry Review’ and we’re in business. MIR would have it’s very own, rather limited Maemo app.

I hope that mobile developers will react very positively to the Maemo development platform. I can’t ever remember seeing this type of offering for Symbian, 4-5 clicks from the symbian.org homepage.

The demonstrated UI looks nice. The specs of the N900 are promising. Is it time to get really excited about Maemo?

I hope next week’s Nokia World will set the stage.