The UI for web apps is constructed differently from the UI of desktop apps. I'm interested to know what are actually the major differences in building UI between the two styles of applications in the following areas:
1.Technology used
2.Techniques used
3.Controls used
4.Screen changing behavior
One major thing you can't ignore in Web Design is the back button. Thousands of people have tried to disable, or get around it. Don't try to get around the back button! Instead make the back button part of your design.
A big design difference that a lot of people overlook is the structure of the window itself.
A pet peeve of mine are text links that perform frequent actions. Unless you're actually 'linking' to a separate page, do not make it look like a link. Make it a control, or an image, or something. Links are for moving in websites, buttons do things. Most people will actively ignore blue, underlined text when they want to do something, because they're used to a "submit form" button, or something similar. Links are also quite small and comparatively difficult to click for repeated actions, and for me reek of incomplete design/coding when used extensively.
A lot of web apps that I've seen that have generally failed try to duplicate a desktop app in a browser window... which is fitting a round peg into a square hole. It can be done, but they are not the same thing, and should not be treated as such under almost any circumstance.
A partial exception is when the web app duplicates the function of a desktop app (ie, Google docs). Then, the layout should still reflect a web page more than an app in most circumstances, but the controls should probably mimic a desktop application to help people transition.
Most people use programs on their desktop to do something. Most people use their browsers to see something (read, watch, etc). Of course, there's crossover, but think about most people's daily habits, and remember that other people will be using something you design; it's not just you (and your clones) out there.
And, though it's repeating others, the back button is critical. If you break it, users will want to break you. Overriding the right-click menu or behavior is also usually a bad idea, and mostly annoys users (and some will actively prevent javascript that does this because it annoys them so much (myself included)).
The single biggest difference is IMO that in a web app, you have very limited influence on mouse behaviour, and what you have runs counter to established desktop behaviour. For example:
Desktop apps tend to be written using an "on this event execute this block of code" pattern. Web apps are more block mode "server formats a whole page, user fills in form and presses button, server processes whole form, server formats another whol page" pattern.
AJAX muddies the water slightly because the browser can request some data in the background, and, refresh parts of the page. However the basic principle remains.
It is easier to make desktop GUI respond to particular mouse movements and clicks etc. For Web apps on the other hand the only communication with the server is "get" and "post" requests so the user interface is much clunkier.
Web based apps is are much more portable and you only software you need on the client is a compatable browser. These system management advantages are why people put up with slightly inferior GUI.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With