linuxuk.org Adventures in Linux Land

30Jul/070

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.

[youtube=http://www.youtube.com/watch?v=9J0dPHYUsPI]

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?

[youtube=http://www.youtube.com/watch?v=TrWpUBTDDr0]

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.

'Bling'

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.

[youtube=http://www.youtube.com/watch?v=Zrt5x3hZrhs]

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.

Summary

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!

Filed under: Uncategorized No Comments
25Jul/070

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 bashpodder.shell 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:

http://www.cnet.com/i/pod/cnet_buzz.xml http://feeds.ziffdavis.com/ziffdavis/crankygeekspodcast http://feeds.feedburner.com/Talkcrunch http://www.morningcoffeenotes.com/rss.xml http://feeds.feedburner.com/43FPodcast http://downloads.bbc.co.uk/rmhttp/downloadtrial/worldservice/godigital/rss.xml http://leoville.tv/podcasts/twit.xml http://leoville.tv/podcasts/itn.xml http://leoville.tv/podcasts/floss.xml http://feeds.feedburner.com/TheLinuxActionShow http://www.lugradio.org/episodes.rss

To run bashpodder you need to type at the xterm (if you haven't installed xterm do it now http://770.fs-security.com/xterm/):

./sh bashpodder.shell

bashpodder.shell 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/bashpodder.shell

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 canola-conf-rescan.sh

And there you have it. Podcast heaven.

Filed under: Uncategorized No Comments
24Jul/070

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 https://readermini.com/

Filed under: Uncategorized No Comments
23Jul/070

Nokia 770 rant!


Arggh!

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?

Filed under: Uncategorized No Comments
23Jul/070

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?

Filed under: Uncategorized No Comments