Archive for the ‘Mobile Experiences’ Category
Even though native mobile applications have more usability than the mobile websites at this time, this is what Gartner believes to happen in 2012:
In mature markets, the mobile Web, along with associated Web adaptation tools, will be a leading technology for B2C mobile applications through 2012, and should be part of every organization’s B2C technology portfolio. (Gartner, 2010)
If you are interested in further reading, here is the direct link to their press release.
Decide if you will build a rich client, a thin Web client, or rich Internet application (RIA)
If your application requires local processing and must work in an occasionally connected scenario, consider designing a rich client. A rich client application will be more complex to install and maintain. If your application can depend on server processing and will always be fully connected, consider designing a thin client. If your application requires a rich user interface (UI), only limited access to local resources, and must be portable to other platforms, design an RIA client.
Determine the device types you will support
When choosing which device types to support, consider screen size, resolution (DPI), CPU performance characteristics, memory and storage space, and development tool environment availability. In addition, factor in user requirements and organizational constraints. You may require specific hardware such as a global positioning system (GPS) or a camera, which may impact not only your application type, but also your device choice.
Design considering occasionally connected, limited-bandwidth scenarios when required
If your mobile device is a stand-alone device, you will not need to account for connection issues. When network connectivity is required, mobile applications should handle cases when a network connection is intermittent or not available. It is vital in this case to design your caching, state management, and data-access mechanisms with intermittent network connectivity in mind. Batch communications for times of connectivity. Choose hardware and software protocols based on speed, power consumption and chattiness, and not just on ease of programming.
Design a UI appropriate for mobile devices, taking into account platform constraints
Mobile devices require a simpler architecture, simpler UI, and other specific design decisions in order to work within the constraints imposed by the device hardware. Keep these constraints in mind and design specifically for the device instead of trying to reuse the architecture or UI from a desktop or Web application. The main constraints are memory, battery life, ability to adapt to difference screen sizes and orientations, security, and network bandwidth.
Design a layered architecture appropriate for mobile devices that improves reuse and maintainability
Depending on the application type, multiple layers may be located on the device itself. Use the concept of layers to maximize separation of concerns, and to improve reuse and maintainability for your mobile application. However, aim to achieve the smallest footprint on the device by simplifying your design compared to a desktop or Web application.
Design considering device resource constraints such as battery life, memory size, and processor speed
Every design decision should take into account the limited CPU, memory, storage capacity, and battery life of mobile devices. Battery life is usually the most limiting factor in mobile devices. Backlighting, reading and writing to memory, wireless connections, specialized hardware, and processor speed all have an impact on the overall power usage.
Reference: Codeplex (Microsoft Patterns and Practices)
I have been enjoying my HTC S620 for the last couple of months, but there has been a small problem with my audible alerts when I set an appointment in my mobile calendar. The reminder has been just vibrating, not playing a sound even though I have set the right things for my “Normal” profile to get an audible alert. After a short googling, it turned out to be a bug in Windows Mobile 6.0 (maybe for 5.0 as well).
Thanks to Karl Gechlik that this small but important bug has a fix in this link. He simply explains a workaround about altering the XML file of the profile in order to solve the problem. It seems to be working for me at this time.
As I mentioned in my previous post, I did have a chance to develop a very simple ASP.NET application for my mobile browser about a week ago. It was actually just an experiment for me to play around, and dealing with these topics is a new hobby of mine nowadays. Here is the design related list of elements that I have figured out.
• Simplicity is the key for the best user experience.
Complex designs utilizing nice navigations and high quality graphics are fine with the regular websites, but not with the mobile ones. Complicated components on the UI generally makes the mobile websites difficult to read. I would concentrate on the functionality first, and then try to add some design figures as modest as I can by keeping in mind that the screen size is limited.
• Alternate texts can be a redeemer.
There is an option to choose not to load the images, and there may be some users selecting this option. Therefore, it would be a good practice to put expressive alternate texts to the images.
• AJAX is good friend of mobile IE.
• Ads should be well-balanced with the real estate of UI.
I would avoid using large ad graphics which may need some amount of time to be downloaded. They may also conflict with the usability of the pages.
Some Useful Readings
• Internet Explorer Mobile HTML Elements
• Internet Explorer Mobile CSS Support
• Support for the WIDTH Attribute on Tables
I had been planning to spend some time with my new cell phone, HTC S620 that I purchased about a month ago, in order to push its borders for the best online user experience. Well, I finally had the time today and it is really good to have something that runs Windows Mobile 6.0.
I have added some new URLs to my Favorites folder and organized them for my small browser. Here is my list of best mobile websites:
- Yahoo Mail Mobile – http://m.yahoo.com/mail
- Gmail Mobile – http://m.gmail.com
(Gmail’s Java applet is significantly slow for me, therefore I prefer to use the regular mobile site.)
- Google Reader – http://www.google.com/reader (It automatically formats itself for the mobile IE.)
- Weather Underground Mobile – http://mobile.wunderground.com
- Wapedia – http://wapedia.mobi (It is the mobile version of Wikipedia.)
- CNN Mobile – http://m.cnn.com
- MSN Mobile – http://m.msn.com
- Amazon Mobile – http://m.amazon.com
- Engadget Mobile – http://m.engadget.com
- Flight Stats – http://mobile.flightstats.com (It is an actual time saver when traveling.)
I guess “.mobi” extension was created for the mobile world, but almost every mobile site that I have faced with continue to use the “.com” extension with the transition of “www” to “m” or “mobile” which saved the site owners some amount of domain registration fees.
I also spent couple of hours to write a simple ASP.NET application to be consumed by the mobile browser in order to explore the capacity. The application returns the area code information (city, state, etc.) if you provide a correct format of 3-digit area code. I will try to post more about it and my experiences.