Active Topics

 


Reply
Thread Tools
ARJWright's Avatar
Posts: 861 | Thanked: 734 times | Joined on Jan 2008 @ Nomadic
#11
I'm not a developer, but I do tweak/build UIs and refine user processes as a day job and hobby so I think I'd have some good tips here that I've found:

- the shortest distance between two points is the time it takes to get there; in other words, the fewer steps to complete a task, the better the person will feel about your application

- on a mobile device, popup windows should only be used for alert messages; using them as input panels is the wrong user interface model for less than 5in screens

- using a linear user process flow for applications that are composition based (think > write > publish)

- use consistent icons and fonts to the operating system; however, seperate the content from the presentation layer so that the user can do minor, or you the developer can do major changes with least friction to the entire process.

There are probably a few more; Lord knows that I harp on this stuff way too much on my blogs and device reviews. But those are a few easy-to-do-now kind of things that don't need new toolkits to employ.
 

The Following 2 Users Say Thank You to ARJWright For This Useful Post:
Posts: 3,319 | Thanked: 5,610 times | Joined on Aug 2008 @ Finland
#12
Originally Posted by ARJWright View Post
- the shortest distance between two points is the time it takes to get there; in other words, the fewer steps to complete a task, the better the person will feel about your application
The thing is that the general movement in Maemo is *away* from this principle, due to the 'don't put too much options on a single screen' and increasing finger friendliness. But it's not just Maemo, some non-hildon related apps do it, too. You can't get anywhere with canola without half a dozen taps. Entertaining, animated taps, but still quite a few of them.
 
pycage's Avatar
Posts: 3,404 | Thanked: 4,474 times | Joined on Oct 2005 @ Germany
#13
Since this thread was intended for sharing tips, I'll contribute a bit.

Understanding the client-server architecture of the X server is a key to better graphics performance. The X server renders on screen, while the applications are the client. The communication between clients and server is tranditionally a network connection, or through a Unix socket. You should be aware that this is a very narrow bottleneck. Be careful and decide well when to send graphics data from client to server. You can also use shared memory for sending data from client to server, but this is more complicated and only works if client and server run on the same host (OK for Maemo).

You can render and compose graphics directly on the server side and quickly render them on screen.

When using GTK, you shoud know that:
- GtkDrawingArea is server-side
- GdkPixmap and other GdkDrawable objects are server-side
- GdkPixbuf is client-side

GdkPixmaps can be used as server-side offscreen buffers for composing stuff before rendering on screen. The Pixmap can then be rendered into a GtkDrawingArea, for instance. But you should only update the areas that have changed. There is no hardware rendering acceleration on the current tablets, so you should minimize the amount of rendering down to what's necessary.
 

The Following User Says Thank You to pycage For This Useful Post:
Reply

Tags
optimization, share, tips


 
Forum Jump


All times are GMT. The time now is 02:06.