Wednesday, 25 July 2012

Principle of UI Design

did some research on the principles of UI design for desktop applications in terms of the layout, visual design and user experience.

From this website: http://msdn.microsoft.com/en-us/library/aa511279#sizingspacing , it talks about the important things to design a window applications. Here I will be listing down the important elements/points that can be applied into my interface design later.

Design concepts

Visual hierarchy

A window or page has a clear visual hierarchy when its appearance indicates the relationship and priority of its elements. Without a visual hierarchy, users would have to figure out these relationships and priorities themselves.
Visual hierarchy is achieved by skillfully combining the following attributes:
  • Focus. The layout indicates where users need to look first.
  • Flow. The eye flows smoothly and naturally by a clear path through the surface, finding user interface (UI) elements in the order appropriate for their use.
  • Grouping. Logically related UI elements have a clear visual relationship. Related items are grouped together; unrelated items are separate.
  • Emphasis. UI elements are emphasized based on their relative importance.
  • Alignment. The UI elements have coordinated placement, so they are easy to scan and appear orderly.
Additionally, effective layout has these attributes:
  • Device independence. The layout appears as intended regardless of the font typeface or size, dots per inch (dpi), display, or graphic adaptor.
  • Easy to scan. Users can find the content they are looking for at a glance.
  • Efficiency. UI elements that are large need to be large, and elements that are small work well small.
  • Resizability. If helpful, a window is resizable and its content layout is effective no matter how large or small the surface is.
  • Balance. The content appears evenly distributed across the surface.
  • Visual simplicity. The perception that a layout is not more complicated than it needs to be. Users don't feel overwhelmed by the layout's appearance.
  • Consistency. Similar windows or pages use a similar layout, so users always feel oriented.

A design model for reading

Users choose what they read by the content's appearance and organization. 
  • People read in a left-to-right, top-to-bottom order (in Western cultures).
  • There are two modes of reading: immersive reading and scanning. The goal of immersive reading is comprehension.
  • When using software, users aren't immersed in the UI itself but in their work. Consequently, users usually don't read UI text—they scan it. They then read bits of text comprehensively only when they believe they need to.
  • Users tend to skip over navigation panes on the left or right side of a page. Users recognize that they are there, but look at navigation panes only when they want to navigate.
  • Users tend to skip over large blocks of unformatted text without reading them at all.
  • All things being equal, users first look in the upper left corner of a window, scan across the page, and end their scan in the lower right corner. They tend to ignore the lower left corner.
  • But in interactive UI, not all things are equal so different UI elements receive different levels of attention. Users tend to look at interactive controls—especially controls in the upper left and center of the window—and prominent text first.

Flow

A layout has flow when users are guided smoothly and naturally by a clear path through its surface, finding UI elements in the order appropriate for their use. Once users identify the focal point, they need to determine how to complete the task. The placement of the UI elements conveys their relationship and should mirror the steps to perform the task. Typically, this means the task's steps should flow naturally in a left-to-right, top-to-bottom order (in Western cultures).
You know a layout has good flow when:
  • The placement of the UI elements mirrors the steps users need to perform the task.
  • UI elements that initiate a task are in the upper-left corner or upper-center.
  • UI elements that complete a task are in the lower-right corner.
  • Related UI elements are together; unrelated elements are separate.
  • Required steps are in the main flow.
  • Optional steps are outside the main flow, possibly de-emphasized by using a suitable background or progressive disclosure.
  • Frequently used elements appear before infrequently used elements in the scan path.
  • Users always know what to do next. There are no unexpected jumps or breaks in the task flow.

Balance

A window or page has balance when its content appears evenly distributed across its surface. If the surface physically had the same weighting as it has visually, a balanced layout wouldn't tip over to one side.
The most common balance problem is having too much content on the left side of a window or page. You can create balance in the following ways:
  • Using larger margins on the left side than the right.
  • Placing UI elements used to complete a task on the right.
  • Placing UI elements used throughout the task in the center.
  • Lengthening resizable or multi-line controls.
  • Using center-alignment strategically.

Visual simplicity

Visual simplicity is the perception that a layout is not more complicated than it needs to be.
You know a layout has visual simplicity when it:
  • Eliminates unnecessary layers of window chrome.
  • Presents the content using at most seven easily identifiable groups.
  • Uses lightweight grouping, such as layout and separators instead of group boxes.
  • Uses lightweight controls, such as links instead of command buttons for secondary commands, and drop-down lists instead of lists for choices.
  • Reduces the number of vertical and horizontal alignment grid lines.
  • Reduces the number of control sizes, by, for example, using only one or two command button widths on a surface.
  • Uses progressive disclosure to hide UI elements until they are needed.
  • Uses sufficient space so that the window or page doesn't feel cramped.
  • Sizes windows and controls appropriately to eliminate unnecessary scrolling.
  • Uses a single font with a small number of sizes and text colors.
As a general rule, if a layout element can be eliminated without harming the effectiveness of the UI, it probably should be.

=======================================================

Beside from the website, I have also found some principles of design desktop software in a book called "About Face", by Alan Cooper, Robert Reimann, and David Cronin.

In the book, the authors mentioned that desktop applications fit into four categories of posture which are sovereign, transient and daemonic. For my case, the application that I will be designing is a sovereign posture because it is characteristically used for long, continuous stretches of time as the users of my application will be navigating the application for a long time when browsing through the photos.








There are few principles of sovereign posture design:

  • optimise sovereign applications for full-screen use.
  • should feature a conservative visual style. (not complicated visual, use minimal visual of style, toolbars and controls can be smaller than normal, keep the color palette narrow and conservative, avoid using big colorful controls.)
  • should exploit rich input (keywords input, select, search, etc...)
  • maximise document views within sovereign applications. 

========================================================


So, I have learned that to design a desktop application, it should apply appropriate flow of reading such as top to bottom and left to right in the content. The important content of the application should be placed in the middle of the window which uses up most of the space so that it is able to catch user's attention. put the important navigation buttons/elements on the top of window, upper left, or bottom right to avoid users miss see it as these are the placement that users will scan through while browsing/navigating an interface according to the source discussed above. 

The overall interface should be simple and avoid using unnecessary elements/graphics/design that might misleading or distract the users from doing a task. Keep interface simple, plain but aesthetically eye pleasing. 



Research on photo sharing websites and applications

I have found several websites and applications for phones other than Instagram that allow users to post and share their photos including, Pinterest, Tumblr, Flickr and Hipstamatic application. All these websites and applications serve the purpose of photo sharing and they contain plenty beautiful and worth-sharing photos that allow users to view or share or reblog/repin. They share the similar functions which is the users can upload their photos or share other's people photos. But there is a problem which is copyright. Many users share and post pictures but did not give any credits to the photographer/owner/original sources. Below are the researches done on the photo sharing websites and applications. The way I found all these websites is through Google.com. When I typed one of the website in Google.com, it appears several related searches to what I've typed and I eventually found all these similar websites. 

Research on Pinterest


Pinterest, the latest social phenomena to hit the masses, is a sharing platform in which you “pin” pictures to your board. The picture sharing site allows you to create categories of photographs, pin your pictures, and share them with other people.

Initially, Pinterest began as a type of scrapbooking website in which users could post pictures of their family, pets, or vacation and share them with others. As such, it was seen as more of a spare time or hobby type website. However, as the platform began to grow, users started to see the potential that it really held. With new features included, individuals are now using Pinterest for a wide variety of things such as wedding planning, interior decorating, and even marketing.


As stated previously, Pinterest started as a platform for everyday users who wanted to organize and share their pictures with the world. Since then, business owners have began to see the potential of the platform and are now using it to market their products and distribute their brand messages.



There are several different reasons that one might use Pinterest:
  • To share photos with family and friends
  • To share information – Many people use Pinterest to post their recipes and ideas, or showcase their talents through photographs.
  • To gather inspiration – Individuals from around the world use Pinterest to showcase their best ideas. So whether you are looking for wedding ideas, cake ideas, decorating ideas, or other forms of inspiration, Pinterest is a great place to find it.
  • To promote a business – Pinterest can be a great way to share your products with the world. Post your product pictures, or use Pinterest to showcase the talents that you have to offer. Even better, use it to create a visual brand personality for your business. Make people fall in love with who you are and what you do.
source: http://www.mymagneticblog.com/what-is-pinterest/

In this case, Pinterest would be a platform that provide pictures/visual references/inspirations to people using mostly images. People share beautiful images such as fashion, home-deco, photography, food, and many other to maximise the purpose - SHARING. People share pictures for many purposes, such as to promote certain thing, to share information to other people and many more. People are allowed to repin pictures to their pinboard from the other websites once they are the members of Pinterest. Basically it means Pinterest members can pin any pictures from anywhere to their pinboard.

photo source: screenshot of Pinterest.com webpage (www.pinterest.com)

Research on Tumblr

Tumblr is a micro-blogging service. This means that blogs on Tumblr are better suited for sharing things like photosvideos, and links than long, text-based posts.
Blogs on Tumblr can seem a little different from blogs hosted on other websites. For one thing, Tumblr contains a lot of images: the Tumblr team says that half of the posts published on the site are photos. According to this Tumblr infographic by Mashable, Tumblr is also a place where people post about humorfashiondesignart, and other specialized subjects.
  • Tumblr is elegant. Many of Tumblr’s themes are designed to showcase images and video in a simple, beautiful way. While these themes wouldn’t be ideal for posting lots of text, they’re perfect for highlighting a few meaningful images, as this couple did on the Tumblr they created to introduce their newborn daughter.
  • Tumblr lets you share. One reason why Tumblr hosts so many images that “go viral” and spread quickly across the web is its Reblog tool. Simply click Reblog on a Tumblr post you like, and the post will be published to your own Tumblr for your readers to see.
sources: http://blog.gcflearnfree.org/2012/02/16/what-is-tumblr/

Another research found said that: most creative types would agree that a selection of pictures is more likely to inspire them than a bunch of text links. For instance, you could use delicious tagging to collect and organise recipe ideas, but reading that wouldn’t be anywhere near as inspiring to most of us as a collection of pretty pictures of food.
Another research/article found said that: "If you look at the Tumblr of its quirky founder and creator David Karp, you'll notice that it's squeaky clean and includes mostly pictures"
Tumblr is open, allowing you to share posts back and forth between popular apps like FacebookTwitterInstagram, and even other blogging platforms.
source: http://www.businessinsider.com/how-to-use-tumblr-2011-5?op=1#ixzz21tO27Ton

photo source: screenshot of Tumblr.com webpage. (www.tumblr.com)

Research on Flickr

The folks at Flickr describe Flickr as a place where you can:

  • Organize your photos in a meaningful way
  • Share your photos and stay in touch with your friends and family
  • Form a group for a wedding, reunion and eventFind beautiful, cool or intriguing photos
  • And much, much more
source: http://www.stephanspencer.com/flickr/

Flickr is an online photo management and sharing application. Its primary goals are to help people make photos available to those who matter to them, and to enable new ways of organizing pictures. 


Flickr is one of those ideas that depends on interconnectivity. Your pictures are of interest to your contacts; your weather pictures are of interest to other users of the weather photos group. 


source: http://macdevcenter.com/pub/a/mac/2005/08/02/flickr.html

photo source: screenshot of Flickr.com webpage (www.flickr.com)

Tuesday, 24 July 2012

Decision Changing and Making

After I've done the research, I've noticed that I am facing a problem by creating the app for Instagram which is: Instagram is built for the purpose of photo sharing using cellphones. If I would want to create a PC version of it, I might spoil the spirit or meaning of the application. Therefore, I've decided to create a desktop application that implemented features and good points of Tweetdeck which is focusing on Photo Sharing. This application that I will be creating is a application that helps manage the accounts of photo sharing such as Pinterest, and Flickr and others. But for this project that I am working on, I will be focusing on Pinterst and Flickr due to the limitation of working hour. 

//The reason why I choose these 3 photo sharing sites/application because they are popular among the other photo sharing app/sites that people are using now. There are both websites and application for these 3 photo sharing function for instance, there is Instagram application in Android and iPhone, and there are also several websites that serve the purpose of viewing instagram photos. //


Saturday, 21 July 2012

Research on desktop application

There is this website (Nees, 2010) shows the advantages of using a desktop application compared to web app (where I agree with his points) which are: 

1.       Can conveniently run in the background and pop windows or notifications in a friendly mannerHave you seen web apps try to pop windows or notifications?  They are not always very user friendly.  Gmail chat as a web app tries this.  If the browser is in the background, the window title on the task bar changes to show the name of the user that sent you a message.  It is a decent attempt at a notification, but if you install a Desktop version of a instant messenger you’re generally used to a more user friendly toast pop.

2.       Can offer better usability with more design and layout optionsSometimes you want a more minimalist approach with applications.  Say you want an application that will keep track of your stocks for instance.  You may not want to have a full browser window or tab open for that information.  The Vista or Windows 7 gadgets can provide a minimal view of your stocks.  The gadget can conveniently run in the background and consumes fewer resources than a web page.  I’ve used a couple browser extensions for a minimalist view, but even those can consume more resources than necessary and I can’t really classify those as a web app. 

3.       Integrate more seamlessly with other applications and hardware devicesHave you installed Microsoft OCS?  How many hooks into other applications does that desktop app have when you install?  I open up Outlook and compose an email I’ll see the OCS status next to the contacts name.  That integration can only happen through a desktop install.  As another example, it is not likely you’ll see a DVD burner web app.

4.       Can run standalone without LAN/WAN connectivityIn some environments internet access or perhaps even LAN connectivity is restricted for security purposes.  Perhaps it is not restricted, but you want to offer a survivable solution in the event that the LAN/WAN is unavailable.  Your primary work might be done offline and then sync’d up later when connected.  It is difficult for web apps to function under those conditions.

5.       Are more responsive and perform fasterWeb apps inherently carry overhead that comes with a general purpose web browser.  Desktop apps can be designed to only load what is needed, which can be considerably less than the memory or other resources consumed by just a base browser startup.  Think about the lightest desktop app you use.  Would you still use it if it required you to start IE every time or even open a new tab?With new technology web apps are increasing providing functionality we only thought possible in a desktop application a few years ago – who would have thought we’d have a web app version of Photoshop?  source: http://www.inin.com/Blog/archive/2010/03/30/top-5-reasons-desktop-apps-are-better-than-web-apps.aspx

I am agree with some of the points which I have highlighted. The reason of creating a desktop application is because it is more user friendly, users just have to install and the program will automatically runs in background until you want to close it or whatever. It will give you notifications like pop-up and alert (for example: MSM Messenger, Skype, etc...) so that you would not have to go to the browser and click on the tab to view the webpage to check while you are doing some other things. Even web apps have notifications, but they will only appear on the title bar of the webpage, so still, it is within the browser itself, and that's one of the limitation of web app. 

Beside, it also saves more memory than a web app and it does not always require an internet connection. For example, files that have saved using a desktop application can be easily viewed and navigate even though there is no internet connection, unlike the web app, internet is required can only interact with it. And it is rare possibility for a web app to able to manage different accounts at one time because this required much more memory and space and hence require more time to load. This might leads to dissatisfaction of using the product and eventually reduce the user experience. 


Wednesday, 18 July 2012

purpose/advantages of Tweetdeck

Tweetdeck
-twitter client and also a software program that provides single or multi-column layout.
-it serves the purpose of managing information more effectively and acts as a desktop application.
-it helps to organise feeds into several columns/schedules tweets.
-automatically update your profiles at several other social networking sites. by doing this, it helps save user a considerable amount of time so that user doesn't have to log in to multiple social networking platforms to get the messages. However, if user doesn't want the messages to be synchronised, user can also seperate the sites.
-it helps manage multiple accounts.
-since it's a desktop application, it runs in background. Therefore it allows users to use it in background while they are doing other things. Tweetdeck will also notify users when they receive latest tweets by people whom they are following.

Tweetdeck shares same function as Twitter.com, it evolves existing features of the original websites by integrating other social media API and features to make it better. Tweetdeck also speeds up interaction time, communicate faster without interrupting or pausing the things user are doing. Users can reply tweets on the go on the right side of the desktop. Tweetdeck allows users to view updates easily and they are able to receive updates from both Twitter and Facebook or other social media at the same time within the interface. It helps to save time by without switching the tab on the browser or log out and log in to different social website. This is the one of the advantages of it as it saves users' data when they first logged in at the beginning, unlike the websites, once users clear the cookies, they are required to key in username and password again in order to proceed.

sources:



Why there is no Instagram websites?

The current instagram website is only allows users to log in to their accounts and manage their profile such as names, emails, username, password, birthday, biography and websites. However, instagram users are not able to view feeds from the websites. There is no full website full Instagram, it's all based on the Android and iPhone apps, so there is no way for people to browse by topics or geographical areas and stumble across you images. There are full pages for individual images, but users are not able to click on any usernames to start browsing without the app.

Example of website of Instagram that displays photo of other users. Users are allowed to comment or like the photos but they are not able to browse through their feeds by using the website.
source: http://lifeinlofi.com/2012/06/29/instagram-new-web-interface-0612/


"The new photo page lacks a lot of the functionality needed in a true web interface.
The only way I was able to access the new page is through an email link sent from the Instagram phone app. I was only able to access the individual photos shared via email. I was still unable to access my feed — or anyone else’s — from the my login on the web. I was unable to browse other users’ feeds or profiles. That’s a pretty big, frustrating omission for a “web interface.”
In the web version, there is no user autofill for replying to comments. Also, it looks to me like there’s no way to see the location info on a map as in the previous version of the interface. There’s only a small text tag when location information is in the photo. "
Website for Instagram that allows user to create their own gallery and invite users to view ans share their photos. http://instagrid.me/bldgblog/
another website for instagram that allows users to view friends's photos, comments, like, follow/unfollow friends, and browse through popular feeds. http://instaview.me/user/dramabeats/



Research

these are the notes that I've written after my discussion with my mentor about my initial idea. And I've decided to find out the following in order to proceed:
1. unique selling point of my application
2. find out why there is no instagram for PC / website yet?
3. the purpose/advantages of Tweetdeck (my case study).
4. research on my application's content.