Archive for July, 2007


Edje, Evas and Python, the future of mobile interfaces?

There was a lot of excitement in the mobile device camp after the release of the apple iphone. Most people will agree, it has a wonderful ‘looking’ interface although its terribly lacking in the feature department. So what can other mobile devices take from this?

Kinetic Scrolling

One of the major things to take from the iphone interface is that kinetic scrolling is the way forward. The problems are obvious. A small screen coupled with an even smaller scroll bar can only end in trouble. Too many times have I tried to scroll the page on my Nokia 770 only to either completely miss the scroll bar or worse, click a link close to it. Even on the gargantuan screens that we posses on our desktop PC’s today, the scroll bar is becoming obsolete. How many people don’t have a scroll mouse these days? How many people actually click on the scroll bar arrows or drag the slider to move the page? I bet its not many. The scroll wheel has replaced a somewhat cumbersome interface element on the PC.

To keep up with the less buttons = cool’ brigade a more interactive scroll method is needed, hence ‘Kinetic Scrolling’.

The video above, by Kenneth Christiansen demonstrates what can be done on the Nokia N800 with a just a small amount of code and a great set of tool kits, namely Edje, Evas and Python.

A better input method

Another problem which many users of small touch screens experience is the somewhat cumbersome ‘virtual keyboard’ that is available which these kinds of devices. The main concern is the size of it. Make it two large, large enough for say finger input, and you lose a lot of screen real-estate. Make it two small and you lose the ability to finger type and maybe even type with a stylus. So where is the happy medium?

The video above demonstrates what can be done with only “230 lines of Python, 1110 lines of Edje, including comments and blank lines”. What you get is a really easy to type on keyboard, reminiscent of the iphones figure board.


Another thing that the iphone has over many of its rivals in the mobile device category is ‘bling’. You know, it just looks good. It scrolls nicely, it transitions between screens with easy and treats the eyes to some well needed candy. But where does that leave us non-iphone wielding mobile device lovers? One project that aims to bring a rich and fulfilling interface to the Nokia 770 and N800 is the Canola Project. In its current incarnation, its a very functional and rich user interface bring media such as photo’s, music and video’s together in a easy to navigate form.

The next version of Canola is currently in development but already boasts a much improved user interface due to the use of Edje, Evas and Python. A great post over on Marcelo Eduardo’s blog outlines where the project is going and explains in detail the video above.


Exciting times are ahead for the future of mobile interfaces with Edje, Evas and Python blazing the way on the Nokia internet tablets. But it won’t be confined to just these devices. The smart money, taking in to consideration Ubuntu’s love of Python, is that the newly announce mobile partnership with Intel on the The Ubuntu Mobile and Embedded project will be using these very same toolkits and with Ubuntu’s continuing dominance on the Linux desktop, all I can say is watch this space!


TIP: Setting up Bashpodder on the 770

I finally gave up on gPodder, it was flakey and constantly hanging and now I’m using bashpodder. It doesn’t have the ‘bling’ that gPodder does (it has a command line interface) but it ‘just works’.

To set it up first download

Save the 3 bashpodder files on your flashcard to ensure that they are preserved after any future flashing of the 770 and edit the file if you wish.

Bashpodder uses a bp.conf file which lists all the urls of the podcasts you wish to download. For example, a snap-shot of mine is:

To run bashpodder you need to type at the xterm (if you haven’t installed xterm do it now

./sh needs to run with the sh first because its is running off of the FAT32 filesystem of the memory card and unix permisisons just do not exist for sh to check.

Now heres the clever bit. To get bashpodder to check your podcast feeds regulary for any new episodes (I get it to check once a day at 3am in the morning) you need to set up a cron job. Add the following line to your personal crontab or if you don’t already have one make a new one by running crontab -e.

00 03 * * 1-5 sh /media/mmc1/bashpodder/

With this setup I always have my regular podcasts available for the commute into work each morning. At the moment I use Canola to play back the podcasts in the car which is a great piece of software but one problem I found is that it doesn’t auto rescan the media directory if you add new files. To do this I use another cron job which looks like (runs at 4am):

00 04 * * 1-5

And there you have it. Podcast heaven.


Like Google Reader? Love Reader Mini!

So, like me you’ve just bought your shiny new Nokia 770 and thought ‘ooh that built in rss reader is cr@p but I love Google Reader so it’s not a problem’ Wrong!.

Google Reader is my main source of news these days, basically the digital newspaper that only contains articles that I am interested in. To my dismay, after buying the 770 I was disappointed to find that Google Reader doesn’t work with the version of Opera that is installed but here comes readermini to the rescue. A description from the home page sums it up nicely,

“Reader Mini is a light-weight alternative to Google Reader. Reader Mini uses the Google Reader API to access your feeds. It is a compromise so mewhere between the power of the main interface and the too-limited mobile version.”

Google Reader: Mobile View

If we can’t make Google re-write Reader for the 770 then I suppose this is the next best thing.

Google Reader: Reader Mini View

Find it at


Nokia 770 rant!


Why oh why am I having so many crashes and reboots with the Nokia 770? I’ve had it less than a week and the amount of times I’ve had to reboot it or kill processes must be up around the 100 mark.

For example, accessing pownce seems to hang the tablet half way through displaying some aspect of the page (I get the pretty mug shot and even the template background but then it dies).

Another one that doesn’t fail to kill it is gPodder. I’m really looking for a podcast client that works nicely on the 770 so I can get rid of my ipod (I only listen to podcasts) but nothing is even coming close. gPodder promises everything, the interface is nice, it has scheduled downloading, and is exactly what I need but I haven’t been able to download a single podcast with it yet 😦

I’m starting to think I may have a hardware issue with this? RS-MMC card or even the 770 itself or maybe its just the crappy software that people put out for this device. I’m very tempted to write my own ‘podcatcher’ at this point and start entirely from scratch but would it be worth it!?

Does anyone have any success with the latest gPodder release or is it just me?


TIP: Remote 770 Desktop

Just another one to file under the ‘tips’ section (and to make sure I don’t forget these things!) I managed to get a remote desktop connection to the 770 by using x11vnc. First install the x11vnc server software and start it up (I used xterm and typed x11vnc &).

As I was sat in front of a Windows box at the time I used tightvnc to connect. Looking at this webpage will show you something like this on the right.

Nice huh?


TIP: Opera Optimised View

Just a quick one but a feature that I stumbled upon which really hasn’t got the web-time it deserves is the ‘Optimised view’ switch in the Opera browser. This is great for times when you use the zoom keys to make a web page’s text bigger. With this set every web page’s text is scaled to fit to the zoom level you currently have the device set at. So instead of zooming in, only to be presented with an unergonomic horizontal scroll bar, the text layout is adjusted accordingly. Wonderful.

Find this setting in Opera under View->Optimised view.


MCEGuru initial thoughts

At home I have a Microsoft Vista Media Center PC purely because I haven’t had the time or sadistic inclination to install and configure mythtv yet but rest assured I will do at some point relatively soon. Anyway, I stumbled apon a great looking Nokia 770 app called MCEGuru that is a front end for media center. It looks fantastic, enough so to get me to install and play with it. So after having it installed for the last hour, what do I think?

Well, the interface is very slick and on the surface it looks like a killer app. Unfortunately, and this is where the alpha version tag is most appropriate, its buggy as hell and a pig to use. I’m sure that when all the bugs are ironed out this is going to be a must have app for all media center and 770 owners but for now, its just a distant dream but a promising one at that.